pyecharts图表练习

发布时间:2026/6/30 13:38:55
pyecharts图表练习 【实验目的】熟练掌握pyecharts的各种图表能够快速实现基本图表。【实验原理】Pyecharts常用的图表类型饼图 Pie折线图Line涟漪散点图水球图Liquid桑基图 Sanky主题河流地图Map地理坐标系Geo【实验环境】IE9 以上或Chrome推荐或Firefox等浏览器、pycharm 、Jupyter notebook等编程环境。饼图一单个饼图一、 读取外部数据集生成基本饼图读取 data/手机获赞对比.xlsx文件中的数据利用数据集中的手机品牌和点赞数自己构造饼图结构数据生成饼图、圆环图或玫瑰图显示不同品牌手机获赞对比情况并个性化设置图表包括图表标题、图例、系列标签的显示tooltip、label等样式的设置import pandas as pd from pyecharts import options as opts from pyecharts.charts import Pie file_path 手机获赞对比.xlsx data pd.read_excel(file_path) labels data[手机品牌].tolist() sizes data[点赞数].tolist() pie_chart ( Pie() .add(, [list(z) for z in zip(labels, sizes)]) .set_series_opts( label_optsopts.LabelOpts( formatter{b}: {c} ({d}%) ) ) .set_global_opts( title_optsopts.TitleOpts(title不同品牌手机获赞对比情况), legend_optsopts.LegendOpts(pos_top5%) ) ) pie_chart.render(手机品牌获赞对比饼图.html)效果图二 创建多个饼图根据给定的数据集自主创建并设计饼图/玫瑰图/圆环图/圆环玫瑰图source[[product, 2012, 2013, 2014, 2015, 2016, 2017],[Matcha Latte, 41.1, 30.4, 65.1, 53.3, 83.8, 98.7],[Milk Tea, 86.5, 92.1, 85.7, 83.1, 73.4, 55.1],[Cheese Cocoa, 24.1, 67.2, 79.5, 86.4, 65.2, 82.5],[Walnut Brownie, 55.2, 67.1, 69.2, 72.4, 53.9, 39.1],]encode指定数据方式encode{itemName: product, value: 2012},参考效果代码from pyecharts import options as opts from pyecharts.charts import Pie c( Pie() .add_dataset( source[ [product, 2012, 2013, 2014, 2015, 2016, 2017], [Matcha Latte, 41.1, 30.4, 65.1, 53.3, 83.8, 98.7], [Milk Tea, 86.5, 92.1, 85.7, 83.1, 73.4, 55.1], [Cheese Cocoa, 24.1, 67.2, 79.5, 86.4, 65.2, 82.5], [Walnut Brownie, 55.2, 67.1, 69.2, 72.4, 53.9, 39.1], ] ) .add( series_name2012, data_pair[], radius35%, center[30%,30%], encode{itemName:product,value:2012}, ) .add( series_name2013, data_pair[], radius35%, center[60%,30%], encode{itemName:product,value:2013}, ) .add( series_name2014, data_pair[], radius35%, center[90%,30%], encode{itemName:product,value:2014}, ) .add( series_name2015, data_pair[], radius35%, center[30%, 80%], encode{itemName: product, value: 2015}, ) .add( series_name2016, data_pair[], radius35%, center[60%, 80%], encode{itemName: product, value: 2016}, ) .add( series_name2017, data_pair[], radius35%, center[90%, 80%], encode{itemName: product, value: 2017}, ) .set_global_opts( title_optsopts.TitleOpts(titleDataset simple pie), legend_optsopts.LegendOpts(pos_left30%,pos_top2%), ) .render(Pie_Multi_pie.html) )效果图折线图基本折线图1.通过Faker数据集生成测试数据并生成基本折线图 代码 import pyecharts.options as opts from pyecharts.charts import Line from pyecharts.faker import Faker c( Line() .add_xaxis(Faker.choose()) .add_yaxis(商家A,Faker.values()) .add_yaxis(商家B,Faker.values()) .set_global_opts(title_optsopts.TitleOpts(titleLine-基本示例)) .render(Line.html) ) 2.设置第一个系列的曲线为平滑曲线is_smooth 设置第二个系列的曲线为阶梯曲线is_step 代码 import pyecharts.options as opts from pyecharts.charts import Line from pyecharts.faker import Faker c( Line() .add_xaxis(Faker.choose()) .add_yaxis(商家A,Faker.values(),is_smoothTrue) .add_yaxis(商家B,Faker.values(),is_stepTrue) .set_global_opts(title_optsopts.TitleOpts(titleLine-基本示例)) .render(Line.html) ) 3.设置折线样式linestyle_opts linestyle_optsopts.LineStyleOpts(colorgreen, width4, type_dotted), color 设置颜色width设置线条宽度 type设置线条类型 有solid实线、dotted点型虚线、dashed线性虚线。 自主设计线条粗细、颜色和线型 代码 import pyecharts.options as opts from pyecharts.charts import Line from pyecharts.faker import Faker c( Line() .add_xaxis(Faker.choose()) .add_yaxis(商家A,Faker.values(),is_smoothTrue,linestyle_optsopts.LineStyleOpts(colorgreen,width4,type_dotted)) .add_yaxis(商家B,Faker.values(),is_stepTrue,linestyle_optsopts.LineStyleOpts(colororange,width4)) .set_global_opts(title_optsopts.TitleOpts(titleLine-基本示例)) .render(Line.html) ) 4.设置数据标记点图形 symbol标记的图形pyecharts提供的类型包括circle, rect, roundRect, triangle, diamond, pin, arrow, none is_symbol_show是否显示 symbol 代码 import pyecharts.options as opts from pyecharts.charts import Line from pyecharts.faker import Faker c( Line() .add_xaxis(Faker.choose()) .add_yaxis(商家A,Faker.values(), is_smoothTrue, linestyle_optsopts.LineStyleOpts(colorgreen,width4,type_dotted), symboldiamond, symbol_size15 ) .add_yaxis(商家B,Faker.values(), is_stepTrue,linestyle_optsopts.LineStyleOpts(colororange,width4), symboltriangle, symbol_size15 ) .set_global_opts(title_optsopts.TitleOpts(titleLine-基本示例)) .render(Line.html) ) 5.图元样式配置:itemstyle_opts: border_width设置描边宽度border_color设置描边颜色color设置纹理填充颜色 itemstyle_optsopts.ItemStyleOpts( border_width3, border_coloryellow, colorblue ) 代码 import pyecharts.options as opts from pyecharts.charts import Line from pyecharts.faker import Faker c( Line() .add_xaxis(Faker.choose()) .add_yaxis(商家A,Faker.values(), is_smoothTrue, linestyle_optsopts.LineStyleOpts(colorgreen,width4,type_dotted), symboldiamond, symbol_size15, itemstyle_optsopts.ItemStyleOpts( border_width3, border_coloryellow, colorblue ) ) .add_yaxis(商家B,Faker.values(), is_stepTrue,linestyle_optsopts.LineStyleOpts(colororange,width4), symboltriangle, symbol_size15, itemstyle_optsopts.ItemStyleOpts( border_width3, border_coloryellow, colorblue ) ) .set_global_opts(title_optsopts.TitleOpts(titleLine-基本示例)) .render(Line.html) )效果图涟漪散点图EffectScatter1.自主设计生成带涟漪效果的散点图并设置散点图的symbol和网格线splitline 代码参考 xaxis_optsopts.AxisOpts(splitline_optsopts.SplitLineOpts(is_showTrue)), yaxis_optsopts.AxisOpts(splitline_optsopts.SplitLineOpts(is_showTrue)) 代码 import pyecharts.options as opts from pyecharts.charts import EffectScatter from pyecharts.faker import Faker c ( EffectScatter() .add_xaxis(Faker.choose()) .add_yaxis( 数量, Faker.values(), symbolcircle, symbol_size20, ) .set_global_opts( title_optsopts.TitleOpts(title涟漪散点图示例), xaxis_optsopts.AxisOpts(splitline_optsopts.SplitLineOpts(is_showTrue)), # 显示网格线 yaxis_optsopts.AxisOpts(splitline_optsopts.SplitLineOpts(is_showTrue)), # 显示网格线 ) ) c.render(EffectScatter.html)效果图