使用的pyecharts是v1.0
这里需要注意,pyecharts0.5的版本和v1.0以上的版本完全不一样,可以说是两个包
该包能够方便快捷的绘制图形
饼状图
圆环
代码:
from pyecharts.charts import Pie
from pyecharts import options as opts
from pyecharts.render import make_snapshot
from snapshot_phantomjs import snapshot
def getPie(data,name):
'''
style like this https://gallery.pyecharts.org/#/Pie/pie_radius
样式为 空心 的圆环
:param data:字典
:param name:title
:return:
'''
c = (
Pie()
.add(
"",
[list(z) for z in zip(data.keys(), data.values())],
radius=["45%", "75%"],#直径
center=["50%", "56%"],#中心位置
label_opts=opts.LabelOpts(is_show=False, position="center"),#is_show是否展示数值
)
.set_global_opts(
title_opts=opts.TitleOpts(title=name, pos_top="13",pos_left="1%"),#标题位置
legend_opts=opts.LegendOpts(orient="vertical", pos_top="25%", pos_left="8%"),#图例位置
)
.set_series_opts(label_opts=opts.LabelOpts(formatter="size{b}: {d}%"))#数值表现形式,这里是百分比
# .render("pie_radius.html")
)
return c
if __name__=="__main__":
data = ##########
name = #############
make_snapshot(snapshot, getPie(data,name).render(), name+".png")#无法直接存储,所以使用此方法进行存储,将图像绘制,保存在本地
效果展示
(此处是png,背景实际是纯白背景)
圆饼
代码
def getPie1(data,name):
'''
style like this https://gallery.pyecharts.org/#/Pie/pie_radius
样式为 空心 的圆环
:param data:
:param name:
:return:
'''
c = (
Pie()
.add(
"",
[list(z) for z in zip(data.keys(), data.values())],
center=["50%", "56%"],
label_opts=opts.LabelOpts(is_show=False, position="center"),
)
.set_global_opts(
title_opts=opts.TitleOpts(title=name, pos_top="13",pos_left="1%"),
legend_opts=opts.LegendOpts(orient="vertical", pos_top="25%", pos_left="8%"),
)
.set_series_opts(label_opts=opts.LabelOpts(formatter="size{b}: {d}%"))
# .render("pie_radius.html")
)
return c
# 这里main函数省略,和上面的一样
效果展示
附上pyecharts的官方手册:https://pyecharts.org/#/zh-cn/intro