import plotly.express as px
import pandas as pd
import os # 用于检查文件是否保存成功
from trade_utils.plot import show_pic
# 设置渲染器为 Jupyter 默认
import plotly.io as pio
pio.renderers.default = 'plotly_mimetype+notebook'
# 1. 准备数据
# 我们可以创建一个简单的数据框
data = {
'x_data': [1, 2, 3, 4, 5],
'y_data': [10, 15, 7, 12, 9],
'category': ['A', 'B', 'A', 'C', 'B']
}
df = pd.DataFrame(data)
# 2. 创建 Plotly 图表 (散点图)
fig = px.scatter(
df,
x='x_data',
y='y_data',
color='category', # 根据 category 字段着色
title='Plotly 散点图示例',
labels={'x_data': 'X 轴数值', 'y_data': 'Y 轴数值'}
)
fig.show()
# --- 保存图表到本地 ---
# 4. 指定文件名和格式
filename = "my_plot.jpg"
# 5. 使用 write_image 方法保存图片
# format='jpeg' 或 'jpg' 都可以
# scale 参数可以提高分辨率 (默认是 1)
try:
fig.write_image(filename, format='jpeg', scale=2)
print(f"\n🎉 图表已成功保存为 {filename}")
# 额外检查:确认文件大小
if os.path.exists(filename):
print(f"文件大小: {os.path.getsize(filename) / 1024:.2f} KB")
except Exception as e:
print(f"\n❌ 保存图片时发生错误: {e}")
print("请确认是否已安装 'kaleido' 库:pip install kaleido")
show_pic(filename)