数据可视化pyecharts——数据分析(柱状图、折线图、饼图)

news2025/4/16 22:10:30

安装

首先确保已经安装了pyecharts库,如果没有,可以通过pip install pyecharts进行安装。

柱状图

  • pyecharts.charts导入Bar,从pyecharts导入options
  • 准备数据(如类别数据x_data和对应的数值数据y_data)。
  • 创建Bar对象,通过add_xaxis添加类别数据,add_yaxis添加数据系列,可设置系列名称。
  • 可以使用set_global_opts设置全局配置项,如标题等,最后使用render方法生成图表文件。

折线图

  • pyecharts.charts导入Line
  • 类似柱状图,准备数据后创建Line对象,添加轴数据。
  • 能设置线条样式、标记点等个性化配置,再通过全局配置项设置相关属性,最后渲染。

饼图

  • pyecharts.charts导入Pie
  • 准备数据(通常是数据和对应的标签)。
  • 创建Pie对象,通过add方法添加数据系列,可设置半径等参数。
  • 同样可配置全局选项,如标题、图例等,完成后进行渲染。

通过这些步骤,可以利用 pyecharts 方便地实现柱状图展示数据对比、折线图展示数据趋势、饼图展示数据占比等数据可视化操作。

数据展示

20192018201720162015201420132012201120102009200820072006200520042003200220012000
北京5817.15785.91765430.78755081.264723.864027.16093661.10973314.9343006.282353.93012026.80891837.32381492.6381117.1514919.2098744.4874592.5388533.99454.1676344.9968
天津2410.252106.23972310.35522723.52667.112390.35182079.07161760.02011455.131068.8093821.9916675.6186540.439417.0479331.8507246.18204.5295209.7021163.635133.6069
河北3742.673513.86433233.83322849.872649.182446.61662295.62032084.28251737.771331.85471067.1231947.5858789.1198620.534515.7017407.8273335.8263302.3068283.5023248.7621
山西2347.562292.69821867.002215571642.351820.6351701.62271516.3781213.43969.6652805.8279748.0047597.887583.3752368.3437256.3634186.0547150.8245132.7618114.4762
内蒙古2059.741857.64931703.20952016.431964.481843.67361720.98431552.74531356.671069.9776850.8588650.6764492.3615343.3774277.4553196.7589138.7157112.854699.431395.032
辽宁2651.962616.08322392.76532200.492127.393192.78133343.81063105.37852643.152004.83521591.21971356.08121082.6948817.6718675.2768529.6405447.049399.6888370.4387295.6274
吉林1116.861240.88921210.90811263.781229.351203.38431156.96161041.2514850.1602.4092487.0943422.7961320.6892245.2045207.152166.2807154.0033131.4885121.1015103.8267
黑龙江1262.641282.5951243.31181148.411165.881301.3121277.39511163.1708997.55755.5788641.6627578.2773440.4689386.844318.2056289.42248.8643231.8908213.6398185.3379
上海7165.17108.1486642.26386406.135519.54585.55344109.50863743.70533429.832873.5842540.29752358.74642074.47921576.07421417.39761106.1932886.2277719.79609.4719485.3777
江苏8802.368630.16058171.53158121.238028.597233.14266568.4645860.68845148.914079.85953228.782731.40742237.72761656.6821322.6753980.4939798.1065643.6966572.1473448.3097
浙江70486598.2125804.38375301.984809.944122.02113796.92413441.22673150.82608.46552142.51311933.3891649.49811298.20441066.5964805.9479706.5607566.8522500.6948342.7745
安徽3182.543048.67052812.44952672.792454.32218.44182075.0751792.71921463.561149.3952863.9175724.6197543.6973428.0265334.017274.6284220.7487200.2154192.1813178.7187
福建3052.723007.40872809.03322654.832544.242362.21382119.44551776.17281501.511151.4923932.4282833.4032699.4577541.1707432.6003333.523304.7095272.8867274.2846234.1061
江西2486.512373.0082247.06242151.472165.741881.83151621.23581371.9941053.43778.0922581.3012488.6476389.851305.5214252.9236205.7667168.167140.5457131.979111.5536
山东6526.646485.39596098.63245860.185529.335026.82734559.94634059.43013455.932749.38422198.63241957.05411675.3981356.25261073.125828.3306713.7877610.2242573.1793463.6788
河南4041.63766.01833407.21873153.473016.052739.25562415.44822040.3311721.761381.31781126.06381008.9009862.0804679.1715537.6514428.7799338.0535296.7179267.7459246.4694
湖北3388.393307.07823248.31593102.063005.532566.89532191.22211823.05321526.911011.2314814.8653710.8492590.3552476.0823375.5217310.4464259.7636243.4403231.941214.345
湖南3006.992860.84432757.82122697.882515.432262.78592030.87581782.1561517.071081.6901847.6178722.7122606.5508477.9274395.2651320.6279268.6469231.1459205.4078177.0403
广东12651.4612105.255211320.349710390.359366.788065.07587081.46556229.18045514.844517.04453649.8113310.32352785.80072179.46081807.20441418.50561315.51511201.61261160.5126910.556
广西1811.891681.44661615.12731556.271515.161422.28031317.60351166.0614947.72771.9918620.9888518.4245418.8265342.5788283.0359237.7721203.6578186.732178.6706147.0539
海南814.13752.6673674.105637.51627.7555.3064481.014409.437340.12270.9915178.242144.8584108.293581.813968.680257.035851.320546.238543.765639.1995
重庆2134.882265.54212252.37882227.912154.831922.01591693.24381703.48851488.33952.0745655.1701577.5738442.7317.7165256.8072200.6241161.5618157.8651106.124387.2442
四川4070.693911.00923577.98873388.853355.443061.06842784.09522421.27032044.791561.67271174.59271041.6603850.8606607.585479.6635385.7848336.5917291.8746271.1245233.863
贵州1767.361726.85161613.83771561.341503.381366.67311206.41461014.0547773.08533.7309416.4761347.8416285.1375226.8157182.4963149.2855124.5552108.2899.749485.2324
云南2073.531994.34581886.16871812.291808.11698.05741611.29551338.15091111.16871.1875698.2525614.0518486.7146379.9702312.649263.3618228.9992206.7594191.2799180.745
西藏222230.3543185.8341155.99137.13124.270895.023786.582754.7636.647330.089424.882320.141214.560712.031210.01888.14997.30826.11085.3848
陕西2287.732243.13912006.69391833.992059.951890.40441748.33051600.68621500.18958.2065735.2704591.475475.2398362.4805275.3183214.9586177.33150.2934135.8109114.9711
甘肃850.23871.0537815.7323786.97743.86672.6698607.2717520.3993450.12353.5833286.5898264.965190.9107141.2152123.5026104.1687.656176.243269.948561.2849
青海282.14272.887246.1961238.51267.13251.6759223.8586186.4165151.81110.215387.738171.569256.708342.243733.822226.99624.041121.096519.824116.5843
宁夏423.55436.5205417.5888387.66373.4339.8627308.3376263.9569219.98153.5507111.575595.00980.031261.35747.721637.467730.03126.471427.574520.8244
新疆1577.61531.42291466.51891298.951330.91282.33671128.4875908.9655720.43500.5759388.7848361.0616285.86219.4628180.3184155.704128.2218116.472495.093379.0724

 数据引用处理:

# 读取 Excel 文件中的数据
data = pd.read_excel('全国各省财政收入.xlsx', index_col=0)
years = list(data.keys())
citys = list(data.index)
citys = [city.replace('省', '').replace('市', '').replace('自治区', '') for city in citys]

 重新组织数据

# 重新组织数据
total_data = {}
for year in years:
    temp = list(data[year])
    total_data[year] = []
    for i in range(len(temp)):
        total_data[year].append({"name": citys[i], "value": temp[i]})
print(total_data)

 选取合适代码,进行画图:

对应的代码:

折线图

# 获取指定年份的图表
def get_year_overlap_chart(year: int) -> Line:
    line = (
        Line()
      .add_xaxis(xaxis_data=[item["name"] for item in total_data[year]])
      .add_yaxis(
            series_name="财政收入",
            y_axis=[item["value"] for item in total_data[year]],
            label_opts=opts.LabelOpts(is_show=False),
        )
      .set_global_opts(
            title_opts=opts.TitleOpts(
                title="{}年全国各省财政收入".format(year), subtitle="数据来源:全国各省财政收入.xlsx"
            ),
            tooltip_opts=opts.TooltipOpts(
                is_show=True, trigger="axis", axis_pointer_type="shadow"
            ),
            legend_opts=opts.LegendOpts(
                selected_map={
                    "财政收入": False,
                }
            ),
        )
    )
    return line


# 生成时间轴的图
timeline = Timeline()
for y in years:
    timeline.add(get_year_overlap_chart(year=y), time_point=str(y))

# 设置时间轴自动播放等属性
timeline.add_schema(is_auto_play=True, play_interval=1000)
timeline.render("finance_indices_2002.html")

 

柱状图

# 获取指定年份的图表
def get_year_overlap_chart(year: int) -> Bar:
    bar = (
        Bar()
       .add_xaxis(xaxis_data=[item["name"] for item in total_data[year]])
       .add_yaxis(
            series_name="财政收入",
            y_axis=[item["value"] for item in total_data[year]],
            label_opts=opts.LabelOpts(is_show=False),
        )
       .set_global_opts(
            title_opts=opts.TitleOpts(
                title="{}年全国各省财政收入".format(year), subtitle="数据来源:全国各省财政收入.xlsx"
            ),
            tooltip_opts=opts.TooltipOpts(
                is_show=True, trigger="axis", axis_pointer_type="shadow"
            ),
            legend_opts=opts.LegendOpts(
                selected_map={
                    "财政收入": False,
                }
            ),
        )
    )
    return bar


# 生成时间轴的图
timeline = Timeline()

for y in years:
    timeline.add(get_year_overlap_chart(year=y), time_point=str(y))

# 设置时间轴自动播放等属性
timeline.add_schema(is_auto_play=True, play_interval=1000)
timeline.render("finance_indices_2002.html")
#%%
from pyecharts.charts import Line, Timeline
from pyecharts import options as opts


# 获取指定年份的图表
def get_year_overlap_chart(year: int) -> Line:
    line = (
        Line()
      .add_xaxis(xaxis_data=[item["name"] for item in total_data[year]])
      .add_yaxis(
            series_name="财政收入",
            y_axis=[item["value"] for item in total_data[year]],
            label_opts=opts.LabelOpts(is_show=False),
        )
      .set_global_opts(
            title_opts=opts.TitleOpts(
                title="{}年全国各省财政收入".format(year), subtitle="数据来源:全国各省财政收入.xlsx"
            ),
            tooltip_opts=opts.TooltipOpts(
                is_show=True, trigger="axis", axis_pointer_type="shadow"
            ),
            legend_opts=opts.LegendOpts(
                selected_map={
                    "财政收入": False,
                }
            ),
        )

 

饼图

# 获取指定年份的图表
def get_year_overlap_chart(year: int) -> Bar:
    bar = (
        Bar()
       .add_xaxis(xaxis_data=[item["name"] for item in total_data[year]])
       .add_yaxis(
            series_name="财政收入",
            y_axis=[item["value"] for item in total_data[year]],
            label_opts=opts.LabelOpts(is_show=False),
        )
       .set_global_opts(
            title_opts=opts.TitleOpts(
                title="{}年全国各省财政收入".format(year), subtitle="数据来源:全国各省财政收入.xlsx"
            ),
            tooltip_opts=opts.TooltipOpts(
                is_show=True, trigger="axis", axis_pointer_type="shadow"
            ),
            legend_opts=opts.LegendOpts(
                selected_map={
                    "财政收入": False,
                }
            ),
        )
    )
    return bar


# 生成时间轴的图
timeline = Timeline()

for y in years:
    timeline.add(get_year_overlap_chart(year=y), time_point=str(y))

# 设置时间轴自动播放等属性
timeline.add_schema(is_auto_play=True, play_interval=1000)
timeline.render("finance_indices_2002.html")
#%%
from pyecharts.charts import Line, Timeline
from pyecharts import options as opts


# 获取指定年份的图表
def get_year_overlap_chart(year: int) -> Line:
    line = (
        Line()
      .add_xaxis(xaxis_data=[item["name"] for item in total_data[year]])
      .add_yaxis(
            series_name="财政收入",
            y_axis=[item["value"] for item in total_data[year]],
            label_opts=opts.LabelOpts(is_show=False),
        )
      .set_global_opts(
            title_opts=opts.TitleOpts(
                title="{}年全国各省财政收入".format(year), subtitle="数据来源:全国各省财政收入.xlsx"
            ),
            tooltip_opts=opts.TooltipOpts(
                is_show=True, trigger="axis", axis_pointer_type="shadow"
            ),
            legend_opts=opts.LegendOpts(
                selected_map={
                    "财政收入": False,
                }
            ),
        )

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2146571.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C# 动态编译

一、简介 CSharpCodeProvider 是 .NET 提供的一个强大工具,它允许开发人员在应用程序运行时动态地生成和执行 C# 代码。这一特性为后端开发带来了前所未有的灵活性和动态性,特别是在处理那些需要高度定制化或难以在编译时确定逻辑的场景时,尤…

【项目实训1】手把手教你使用 Dehazeformer 模型去雾:服务器租用、环境配置、自定义数据集、模型的训练与测试(全网最全的操作指导)

前言 文章性质:实操笔记 📖 代码来源:GitHub - IDKiro/DehazeFormer: [IEEE TIP] Vision Transformers for Single Image Dehazing 主要内容:本文详细记录了如何借助 Tabby 图形界面工具在 AutoDL 远程服务器上配置 Dehazeformer 所需的项目环境,并且成功运行 Dehazeform…

HeterGCL-Graph Contrastive Learning Framework on Heterophilic Graph

推荐指数: #paper/⭐⭐ 发表于:IJCAI24 类型:个人觉得算是图结构学习,部分思想不错 问题背景: 传统的随机增强不适合异配图。随机增强主要保留的是同配信息。这就导致在异配图用随机增强会抑制高频信息,直接使用时不合理的(这个…

JDBC 编程

目录 JDBC 是什么 JDBC 的工作原理 JDBC 的使用 引入驱动 使用 常用接口和类 Connection Statement ResultSet 使用总结 JDBC 是什么 JDBC(Java Database Connectivity):Java数据库连接,是一种用于执行 SQL 语句的Java…

【附激活码】2024最新PyCharm下载安装激活汉化教程!

一、PyCharm激活 激活码: KQ8KMJ77TY-eyJsaWNlbnNlSWQiOiJLUThLTUo3N1RZIiwibGljZW5zZWVOYW1lIjoiVW5pdmVyc2l0YXMgTmVnZXJpIE1hbGFuZyIsImxpY2Vuc2VlVHlwZSI6IkNMQVNTUk9PTSIsImFzc2lnbmVlTmFtZSI6IkpldOWFqOWutuahtiDorqTlh4blupflkI0iLCJhc3NpZ25lZUVtYWlsIjoi…

如何使用 Python Matplotlib 绘制 3D 曲面图

在数据可视化中,3D 图表是一个非常有用的工具,特别是当想要展示复杂的三维数据时,如期权的波动率曲面。Python 的 matplotlib 库提供了生成各种类型图表,包括 3D 图表。 本文将介绍如何使用 Python 中的 matplotlib 绘制 3D 曲面…

分公司=一部门——组合模式

文章目录 分公司一部门——组合模式分公司不就是一部门吗?组合模式透明方式与安全方式何时使用组合模式公司管理系统组合模式好处 分公司一部门——组合模式 分公司不就是一部门吗? 时间:5月10日19点  地点:小菜、大鸟住所的客…

开放的数据时代:Web3和个人隐私的未来

在数字化和信息化的时代,数据隐私成为了公众关注的焦点。随着Web3技术的兴起,个人隐私保护进入了一个新的阶段。Web3作为去中心化的互联网架构,提出了对数据控制和隐私保护的新方案。本文将探讨Web3如何影响个人隐私的未来,并分析…

[附源码]SpringBoot+VUE+Java实现人脸识别系统

今天带来一款优秀的项目:java人脸识别系统源码 。 系统采用的流行的前后端分离结构,内含功能包括 “人脸数数据录入”,“人脸管理”,“摄像头识别” 如果您有任何问题,也请联系小编,小编是经验丰富的程序员…

编写程序,在一行上显示1-5数字,每个相邻的数字要求用空格进行分开

目录 前言 一、一行输出(使用一个System语句输出) 二、多行输出(使用多(N)个System语句输出) 三、循环输出(使用for语句循环在通过System语句输出) 四、完整代码 前言 1.本文所…

只会Python编程,做量化交易策略用QMT怎么样?听说QMT是支持Python的!

QMT是专门为机构、活跃投资者、高净值客户等专业投资者研发的智能量化交易终端,拥有高速行情、极速交易、策略交易、多维度风控等专业功能,满足专业投资者的特殊交易需求。覆盖业务范围广:沪深A股、港股通、两融、期权、期货。 适合用QMT的投资者&#x…

使用 UWA Gears 定位游戏内存问题

UWA Gears 是UWA最新发布的无SDK性能分析工具。针对移动平台,提供了实时监测和截帧分析功能,帮助您精准定位性能热点,提升应用的整体表现。 内存不足、内存泄漏和过度使用等问题,常常导致游戏出现卡顿、崩溃,甚至影响…

偷偷告诉你,学会使用这几样测试用例管理工具就够啦!

在软件开发过程中,测试是必不可少的一环,而测试用例则是测试的重要依据。如何有效地管理测试用例,提高测试效率,是每一个测试人员都需要面对的问题。本文将为你介绍几款实用的测试用例管理工具,帮助你更好地进行测试工…

2024年双十一不容错过的好物分享,最值得买的五款单品

双十一购物狂欢节将至,这是一场属于“剁手党”的年度盛宴。每年的11月11日,各大电商平台纷纷推出海量优惠活动,吸引无数消费者积极参与。对于热衷于寻找好物的人来说,双十一无疑是一个不容错过的机会,双十一好物不间断…

基于JavaWeb开发的java+Springboot操作系统教学交流平台详细设计实现

基于JavaWeb开发的javaSpringboot操作系统教学交流平台详细设计实现 🍅 作者主页 网顺技术团队 🍅 欢迎点赞 👍 收藏 ⭐留言 📝 🍅 文末获取源码联系方式 📝 🍅 查看下方微信号获取联系方式 承接…

零基础制作一个ST-LINK V2 附PCB文件原理图 AD格式

资料下载地址:零基础制作一个ST-LINK V2 附PCB文件原理图 AD格式 ST-LINK/V2是一款可以在线仿真以及下载STM8以及STM32的开发工具。支持所有带SWIM接口的STM8系列单片机;支持所有带JTAG / SWD接口的STM32系列单片机。 基本属性 ST-LINK/V2是ST意法半导体为评估、开…

【我的 PWN 学习手札】劫持 tcache_perthread_struct

目录 前言 一、tcache perthread struct 二、劫持 tcache_perthread_struct 三、测试与模板 前言 tcache 是 glibc 2.26 (ubuntu 17.10) 之后引入的一种技术,目的是提升堆管理的性能,与 fast bin 类似。 tcache 引入了两个新的结构体, tc…

idear导入他人项目如何快速运行

最近idear经常导入别人的项目,结果永远在加载依赖项。网上查了一堆资料,什么jdk问题,环境变量问题,maven仓库路径问题,总之就是没啥用。那有没有什么简单粗暴的办法,能够导入项目后快速运行呢。 解决方法&a…

独立站技能树之建站33项自检清单 1.0丨出海笔记

很多时候大家建好站之后很嗨,但过一会就开始担忧各种纠结我是不是还有什么点没做好,或者我的站漏了什么东西,那么接下来以下这个独立站自检清单能很好的帮到你。其实对于新手我还是建议大家直接用一些模板,因为模板上面基本该有的…

Gitee丝滑版本:成功在新电脑添加新文件

git 关键步骤 1.首先在新电脑建一个文件夹,然后打开这个文件夹里面右键打开OPEN BASH GIT HERE。 2.然后输入git init,会在文件夹生成一个git.文件,接着把复制的get clone命令克隆过去就可以下载了,如果遇到403问题&#xff0c…