20200903(pyecharts進階-1)
阿新 • • 發佈:2020-09-03
以下程式碼均在jupyter notebook中執行。
一、全域性配置
參照:https://pyecharts.org/#/zh-cn/global_options,所需功能可在該網站查詢,參照下面程式碼格式舉一反三實現所需。
from pyecharts import options as opts
from pyecharts.charts import Bar
from pyecharts.faker import Faker
x = ["哈士奇", "泰迪", "金毛", "柯基", "吉娃娃", "牧羊犬"]
y1 = [140, 136, 144, 120, 119, 150]
y2 = [130, 146, 24, 110, 79, 110]
bar = Bar()
bar.add_xaxis(x)
bar.add_yaxis("商家A", y1)
bar.add_yaxis("商家B", y2)
#全域性配置:標題,座標軸,圖例
bar.set_global_opts(title_opts=opts.TitleOpts(title="寵物狗的銷售價格", subtitle="兩個商家的對比",
title_link = "https://www.baidu.com",
pos_left = 'center'),
xaxis_opts=opts.AxisOpts( name_rotate = 90),
datazoom_opts = opts.DataZoomOpts(is_show = True),
legend_opts = opts.LegendOpts(pos_left = "right"))
bar.render_notebook()
圖:
二、系列配置項
- set_series_opts
from pyecharts import options as optsfrom pyecharts.charts import Bar from pyecharts.faker import Faker x = ["哈士奇", "泰迪", "金毛", "柯基", "吉娃娃", "牧羊犬"] y1 = [140, 136, 144, 120, 119, 150] y2 = [130, 146, 24, 110, 79, 110] bar = Bar() bar.add_xaxis(x) bar.add_yaxis("商家A", y1) bar.add_yaxis("商家B", y2) #全域性配置:標題,座標軸,圖例 bar.set_global_opts(title_opts=opts.TitleOpts(title="寵物狗的銷售價格", subtitle="兩個商家的對比", title_link = "https://www.baidu.com", pos_left = 'center'), xaxis_opts=opts.AxisOpts( name_rotate = 90), datazoom_opts = opts.DataZoomOpts(is_show = True), legend_opts = opts.LegendOpts(pos_left = "right")) #系列配置項; bar.set_series_opts(label_opts = opts.LabelOpts(is_show = False), markpoint_opts = opts.MarkPointOpts( data = [ opts.MarkPointItem(type_ = "max", name = "最大值"), opts.MarkPointItem(type_ = "min", name = "最小值"), # ])) bar.render_notebook()
三、除了上面兩種方式之外,還可以直接放在x軸或者y軸上進行修飾
from pyecharts import options as opts from pyecharts.charts import Bar from pyecharts.faker import Faker x = ["哈士奇", "泰迪", "金毛", "柯基", "吉娃娃", "牧羊犬"] y1 = [140, 136, 144, 120, 119, 150] y2 = [130, 146, 24, 110, 79, 110] bar = Bar() bar.add_xaxis(x) bar.add_yaxis("商家A", y1,itemstyle_opts = opts.ItemStyleOpts(color = "blue")) bar.add_yaxis("商家B", y2) #全域性配置:標題,座標軸,圖例 bar.set_global_opts(title_opts=opts.TitleOpts(title="寵物狗的銷售價格", subtitle="兩個商家的對比", title_link = "https://www.baidu.com", pos_left = 'center'), xaxis_opts=opts.AxisOpts( name_rotate = 90), datazoom_opts = opts.DataZoomOpts(is_show = True), legend_opts = opts.LegendOpts(pos_left = "right")) #系列配置項; bar.set_series_opts(label_opts = opts.LabelOpts(is_show = False), markpoint_opts = opts.MarkPointOpts( data = [ opts.MarkPointItem(type_ = "max", name = "最大值"), opts.MarkPointItem(type_ = "min", name = "最小值"), # ])) bar.render_notebook()
四、我們再來看一些其他的具體示例
1.主題(全域性,InitOpts)
pyecharts內建提供了10+種不同的風格,另外也提供了便捷的定製主題的方法
from pyecharts import options as opts
from pyecharts.charts import Bar
from pyecharts.globals import ThemeType
x = ["哈士奇", "泰迪", "金毛", "柯基", "吉娃娃", "牧羊犬"]
y1 = [140, 136, 144, 120, 119, 150]
y2 = [130, 146, 24, 110, 79, 110]
bar = Bar(init_opts = opts.InitOpts(theme=ThemeType.WALDEN))
bar.add_xaxis(x)
bar.add_yaxis("商家A", y1)
bar.add_yaxis("商家B", y2)
#全域性配置:標題,座標軸,圖例
bar.set_global_opts(title_opts=opts.TitleOpts(title="寵物狗的銷售價格", subtitle="兩個商家的對比",
title_link = "https://www.baidu.com",
pos_left = 'center'),
xaxis_opts=opts.AxisOpts( name_rotate = 90),
datazoom_opts = opts.DataZoomOpts(is_show = True),
legend_opts = opts.LegendOpts(pos_left = "right"))
#系列配置項;
bar.set_series_opts(label_opts = opts.LabelOpts(is_show = False),
markpoint_opts = opts.MarkPointOpts(
data = [
opts.MarkPointItem(type_ = "max", name = "最大值"),
opts.MarkPointItem(type_ = "min", name = "最小值"), #
]))
bar.render_notebook()