python学习站 /python制作图表
阅读主题
正文字体
字体大小

10.图表组合2

本节2604字(读完预计:秒)2025-03-03 17:21:31
  • """
  • author:少校
  • create Time:2025/2/28 14:02
  • 越努力越幸运
  • """
  • from pyecharts.charts import Bar, Line, Pie, Map, Grid, Page
  • from pyecharts import options
  • from pyecharts.globals import ThemeType
  • # 1. 先准备需要组合的多个单独的图表(图表不需要制图)
  • # 图1
  • bar = Bar()
  • bar.add_xaxis(['数据分析''物联网''云计算''鸿蒙开发''网络安全'])
  • bar.add_yaxis('招生人数', [345403270185300])
  • bar.add_yaxis('应届生人数', [2501205080180])
  • bar.set_global_opts(
  •     title_opts=options.TitleOpts(
  •         title='XXX公司2024上半年数据看板',
  •         pos_left='500px'
  •     ),
  •     legend_opts=options.LegendOpts(is_show=False)
  • )
  • # 图2
  • line = Line()
  • line.add_xaxis(['1月''2月''3月''4月''5月''6月'])
  • line.add_yaxis('销售额', [89102776512050])
  • line.add_yaxis('成本', [405233265910])
  • line.set_global_opts(
  •     title_opts=options.TitleOpts(is_show=False),
  •     legend_opts=options.LegendOpts(is_show=False)
  • )
  • # 图3
  • pie = Pie()
  • pie.add(
  •     '销量',
  •     [('华为'290000), ('小米'329870), ('Apple'128700), ('Vivo'98760), ('Oppo'109870)],
  •     radius=(50200),    # (内半径, 外半径)
  •     rosetype='radius',       # 让外半径的值根据占比自动调整(制作不规则饼图)
  •     center=('950px''800px')
  • )
  • pie.set_global_opts(
  •     title_opts=options.TitleOpts(is_show=False),
  •     legend_opts=options.LegendOpts(is_show=False)
  • )
  • # 图4
  • map1 = Map()
  • # 2. 添加数据
  • map1.add(
  •     '人均GDP',
  •     [('四川省'77315), ('北京市'228011), ('上海市'216834),
  •      ('湖南省'57890), ('青海省'49876), ('广东省'139080), ('山西省'68905),
  •      ('内蒙古自治区'85621)],
  •     zoom=0.5,       # 默认大小为原地图的1.5倍
  •     max_scale_limit=0.5,      # 缩放最大倍数为3
  •     min_scale_limit=0.5,     # 缩放最小倍数为0.7
  •     center=('145px''20px')
  • )
  • map1.set_global_opts(
  •     title_opts=options.TitleOpts(is_show=False),
  •     legend_opts=options.LegendOpts(is_show=False)
  • )
  • # 2. 创建Grid对象(大盒子)
  • grid = Grid(
  •     init_opts=options.InitOpts(
  •         width='1500px',
  •         height='2000px',
  •         theme=ThemeType.LIGHT
  •     )
  • )
  • grid.add(bar, grid_opts=options.GridOpts(
  •     pos_left=50,
  •     pos_top=20,
  •     width=600,
  •     height=400
  • ))
  • grid.add(line, grid_opts=options.GridOpts(
  •     pos_left=710,
  •     pos_top=20,
  •     width=600,
  •     height=400
  • ))
  • grid.add(map1, grid_opts=options.GridOpts())
  • grid.add(pie, grid_opts=options.GridOpts())
  • grid.render('charts/组合3.html')


网友评论

相关作品