1、条形图
from pyecharts.charts import Bar
from pyecharts.faker import Faker
from pyecharts import options as opts
# 绘制柱状图
bar = (
Bar() # 创建柱状图
.add_yaxis("商家A", Faker.values(),color=Faker.rand_color()) # 添加数据
.add_yaxis("商家B", Faker.values(),color=Faker.rand_color())
.add_xaxis(Faker.choose()) # 添加x轴数据
.set_global_opts(title_opts=opts.TitleOpts(title="柱状图", subtitle="副标题")) # 设置标题
)
# 渲染图表
bar.render_notebook()
设置标记线
# 设置标记线
bar = (
Bar() # 创建柱状图
.add_yaxis("商家A", Faker.values(),color=Faker.rand_color()) # 添加数据
.add_yaxis("商家B", Faker.values(),color=Faker.rand_color())
.add_xaxis(Faker.choose()) # 添加x轴数据
.set_global_opts(title_opts=opts.TitleOpts(title="柱状图", subtitle="副标题")) # 设置标题
.set_series_opts(markline_opts=opts.MarkLineOpts(
data=[
# opts.MarkLineItem(type_="average", name="平均值")
opts.MarkLineItem(y=80,name='合格线')
]
)) # 设置标记线
)
# 渲染图表
bar.render_notebook()
设置堆叠
2、直方图
from pyecharts.charts import Bar
from pyecharts.faker import Faker
from pyecharts import options as opts
# 绘制图表
bar = (
Bar()
.add_xaxis(Faker.choose())
.add_yaxis("商家A", Faker.values(),gap='0%')
.add_yaxis("商家B", Faker.values(),gap='0%')
.set_global_opts(
title_opts=opts.TitleOpts(title="直方图",title_textstyle_opts=opts.TextStyleOpts(color='white')), # 标题文字颜色
legend_opts=opts.LegendOpts(textstyle_opts=opts.TextStyleOpts(color='white')), # 图例文字颜色
)
)
bar.render_notebook()
3、折线图
from pyecharts.charts import Line
from pyecharts.faker import Faker
from pyecharts import options as opts
from pyecharts.globals import ThemeType
x_data = Faker.week
types = Faker.choose()
line = (
Line(init_opts=opts.InitOpts(theme=ThemeType.DARK))
.add_xaxis(x_data)
.add_yaxis(types[0],Faker.values(),stack="总量")
.add_yaxis(types[1],Faker.values(),stack="总量")
.add_yaxis(types[2],Faker.values(),stack="总量")
.add_yaxis(types[3],Faker.values(),stack="总量")
.add_yaxis(types[4],Faker.values(),stack="总量")
.add_yaxis(types[5],Faker.values(),stack="总量")
.add_yaxis(types[6],Faker.values(),stack="总量")
)
line.render_notebook()
面积堆叠
line = (
Line(init_opts=opts.InitOpts(theme=ThemeType.DARK)) # 设置主题
.add_xaxis(Faker.choose())
.add_yaxis("商家A", Faker.values(),stack='总量')
.add_yaxis("商家B", Faker.values(),stack='总量')
.add_yaxis("商家C", Faker.values(),stack='总量')
.add_yaxis("商家D", Faker.values(),stack='总量')
)
line.set_series_opts(
areastyle_opts=opts.AreaStyleOpts(opacity=0.8), # 增加面积图的显示
label_opts=opts.LabelOpts(is_show=False), # 不显示标签
)
line.set_global_opts(
title_opts=opts.TitleOpts(title="Line-面积图堆叠"), # 设置标题
xaxis_opts=opts.AxisOpts(boundary_gap=False), # 从x轴原点开始绘制
tooltip_opts=opts.TooltipOpts(trigger="axis"), # 设置鼠标悬停时的提示
)
# 渲染图表
line.render_notebook()
4、散点图
from pyecharts.charts import Scatter
from pyecharts.faker import Faker
from pyecharts import options as opts
from pyecharts.globals import ThemeType
sc = (
Scatter() # 初始化散点图
.add_xaxis(Faker.choose()) # x轴数据
.add_yaxis('',Faker.values()) # y轴数据
.set_global_opts(
visualmap_opts=opts.VisualMapOpts(type_='size')
)
)
# 渲染图表
sc.render_notebook()
5、箱图
from pyecharts.charts import Boxplot
from pyecharts.faker import Faker
from pyecharts import options as opts
from pyecharts.globals import ThemeType
from random import randint
box = Boxplot()
box = (
box.add_xaxis(Faker.choose())
.add_yaxis('商家A',box.prepare_data([
[randint(0,100) for i in range(100)],
[randint(10,100) for i in range(100)],
[randint(20,100) for i in range(100)],
[randint(30,100) for i in range(100)],
[randint(40,100) for i in range(100)],
[randint(60,100) for i in range(100)],
[randint(80,100) for i in range(100)],
]))
.add_yaxis('商家B',box.prepare_data([
[randint(0,100) for i in range(100)],
[randint(10,100) for i in range(100)],
[randint(20,100) for i in range(100)],
[randint(30,100) for i in range(100)],
[randint(40,100) for i in range(100)],
[randint(60,100) for i in range(100)],
[randint(80,100) for i in range(100)],
]))
)
# 渲染图表
box.render_notebook()
6、饼图
from pyecharts.charts import Pie
from pyecharts.faker import Faker
from pyecharts import options as opts
from pyecharts.globals import ThemeType
from random import randint
pie = (
Pie()
.add('',data_pair=[i for i in zip(Faker.choose(),Faker.values())],
label_opts=opts.LabelOpts(formatter='{b}:{c}')
)
.set_global_opts(
legend_opts=opts.LegendOpts(textstyle_opts=opts.TextStyleOpts(color='white'))
)
.set_series_opts(
label_opts=opts.LabelOpts(formatter='{b}:{d}')
)
)
# 渲染图表
pie.render_notebook()
空心饼图
pie = (
Pie()
.add('',data_pair=[i for i in zip(Faker.choose(),Faker.values())],
radius=['50%','70%']
)
.set_global_opts(
legend_opts=opts.LegendOpts(textstyle_opts=opts.TextStyleOpts(color='white'))
)
.set_series_opts(
label_opts=opts.LabelOpts(formatter='{b}:{d}')
)
)
# 渲染图表
pie.render_notebook()
7、热力图
from pyecharts.charts import HeatMap
from pyecharts import options as opts
from pyecharts.faker import Faker
from pyecharts.globals import ThemeType
from random import randint
# 生成图表中的具体数据
value = [[i, j, randint(-20, 40)] for i in range(24) for j in range(7)]
# 绘制图表
hp = (
HeatMap()
.add_xaxis(Faker.clock)
.add_yaxis('温度',Faker.week,value)
.set_global_opts(
visualmap_opts=opts.VisualMapOpts(min_=-10,max_=50)
)
)
# 渲染图表
hp.render_notebook()