pyechartsV1.0 中文说明文档:http://pyecharts.org/#/zh-cn/chart_api
参考文档网站:https://www.okcode.net/article/31144 设置图表的风格和控件的位置
https://www.okcode.net/article/83121 散点图每个点显示数据
https://gallery.echartsjs.com/editor.html?c=xS1jMxuOVm 图表代码网页测试
V0.5版本
支持python2.7
def lineDraw(info):
date, win, use = info[0], info[1], info[2]
line = Line("胜率与使用率", background_color="#FFF") # 默认背景颜色是黑的,需要重新配置一下,#FFF就是纯白
line.add( "胜率",
date,
win,
label_color=["#FF0033", "#4169E1"],
yaxis_formatter="%",
is_smooth=True,
is_fill=True,
area_opacity=0.3,
mark_line=["average"],
mark_point=["max", "min"],
mark_point_textcolor="#000")
line.add("使用率",
date,
use,
yaxis_formatter="%",
is_smooth=True,
is_fill=True,
area_opacity=0.5,
mark_line=["average"],
mark_point=["max", "min"])line.render("0.5折线图.html")
V1.0.X 版本
支持python3.7以上
需要使用倒的包
from pyecharts.charts import Line,Bar,Scatter
from pyecharts import options as opts
Line.py
def lineDraw(info):
date, win_data, use_data = info[0], info[1], info[2]
line = Line(init_opts=opts.InitOpts(bg_color="white"))
line.add_xaxis(date) # 增加x轴
line.add_yaxis("胜率",
win_data,
is_smooth=True, # 线条平滑
areastyle_opts=opts.AreaStyleOpts(opacity=0.2), # 曲线填充面积的透明度
color="#4169E1")
line.add_yaxis("使用率",
use_data,
is_smooth=True,
areastyle_opts=opts.AreaStyleOpts(opacity=0),
color="#FF0033")
line.set_global_opts(title_opts=opts.TitleOpts(title="胜率与使用率", subtitle="皮卡"),
xaxis_opts=opts.AxisOpts(axistick_opts=opts.AxisTickOpts(is_align_with_label=True),
is_scale=False, boundary_gap=False), # 图像贴近y轴
yaxis_opts=opts.AxisOpts(splitline_opts=opts.SplitLineOpts(is_show=True)) # 增加y轴分割线 )
line.set_series_opts(markpoint_opts=opts.MarkPointOpts(data=[opts.MarkPointItem(type_="max"),
opts.MarkPointItem(type_="min")], # 标注最大值最小值
symbol_size=[30, 34], # 标注样式的宽,高
label_opts=opts.LabelOpts(position="inside",
color="#fff",
font_size=9)), # 标注内字体的大小
label_opts=opts.LabelOpts(is_show=True) # 显示每个坐标点的值
markline_opts=opts.MarkLineOpts(data=[opts.MarkLineItem(type_="average")]) # 标注平均线
)
line.render("line_test.html")
Scatter.py 散点图
day_scat = Scatter(init_opts=opts.InitOpts(width="800px", height="300px")) # 图像大小
day_scat.add_xaxis(timepoint[0])
day_scat.add_yaxis("AQI", aqi[0])
day_scat.add_yaxis("SO2", so2[0])
day_scat.add_yaxis("NO2", no2[0])
day_scat.add_yaxis("CO", co[0])
day_scat.add_yaxis("O3", o3[0])
day_scat.add_yaxis("PM2.5", pm2_5[0])
day_scat.add_yaxis("PM10", pm10[0])
day_scat.set_global_opts( title_opts=opts.TitleOpts(title=city_name, # 标题
pos_left="center" # 设置标题居中 ),
legend_opts=opts.LegendOpts(pos_right="right", # 将标签设置为水平居右
pos_top="top" # 将标签设置为垂直居上 )
)day_scat.render("day_scat.html")