🧑 博主简介:曾任某智慧城市类企业
算法总监
,目前在美国市场的物流公司从事高级算法工程师
一职,深耕人工智能领域,精通python数据挖掘、可视化、机器学习等,发表过AI相关的专利并多次在AI类比赛中获奖。CSDN人工智能领域的优质创作者,提供AI相关的技术咨询、项目开发和个性化解决方案等服务,如有需要请站内私信或者联系任意文章底部的的VX名片(ID:xf982831907
)
💬 博主粉丝群介绍:① 群内初中生、高中生、本科生、研究生、博士生遍布,可互相学习,交流困惑。② 热榜top10的常客也在群里,也有数不清的万粉大佬,可以交流写作技巧,上榜经验,涨粉秘籍。③ 群内也有职场精英,大厂大佬,可交流技术、面试、找工作的经验。④ 进群免费赠送写作秘籍一份,助你由写作小白晋升为创作大佬。⑤ 进群赠送CSDN评论防封脚本,送真活跃粉丝,助你提升文章热度。有兴趣的加文末联系方式,备注自己的CSDN昵称,拉你进群,互相学习共同进步。
【数据可视化-111】93大阅兵后的军费开支情况———2024年全球军费开支分析:用Python和Pyecharts打造炫酷可视化大屏
- 一、引言
- 二、数据概览
- 三、数据可视化
- 3.1 创建柱状图+折线图 - 军费开支和总占比
- 3.2 创建饼图 - 军费开支分布
- 3.3 创建地图 - 军费开支地图
- 3.4 创建漏斗图 - 军费开支对比
- 3.5 创建雷达图 - 多维度对比
- 3.6 创建词云图 - 国家名称
- 四、创建可视化大屏
- 五、运行步骤
- 六、可视化结果分析
一、引言
在国际政治和军事战略的舞台上,军费开支是衡量一个国家军事实力和战略意图的重要指标。2025年9月3日,中国举行了盛大的阅兵,向世界展示了中国先进的武器装备和军队风采。本文将使用Python和Pyecharts库,对2024年全球主要国家的军费开支数据进行可视化分析。通过柱状图、折线图、饼图、漏斗图、雷达图和词云图等多种图表类型,我们将直观地展示这些数据,并提供深入的分析。
二、数据概览
首先,让我们快速浏览一下数据。这份数据包含了2024年全球军费开支排名前20的国家,以及它们占全球军费开支的份额,最后的大屏如下。
三、数据可视化
我们的目标是创建一个动态的、可交互的可视化大屏,展示各国的军费开支、占全球的份额、军费开支的分布、军费开支的地区分布以及各国军费开支的对比。整个大屏将以黑色为背景,使用多种颜色来增强视觉效果,让人有一种视觉上的冲击。
以下是基于Pyecharts的完整代码,用于生成我们的可视化大屏,首先导入python包和数据。
import pandas as pd
from pyecharts import options as opts
from pyecharts.charts import *
from pyecharts.globals import ThemeType# 数据准备
df = pd.read_excel("2024各国军费支出数据.xlsx")
3.1 创建柱状图+折线图 - 军费开支和总占比
bar_line = (Bar().add_xaxis(top15_df['国家'].tolist()).add_yaxis("",top15_df['军费开支 (2024)'].tolist(),yaxis_index=0,).extend_axis(yaxis=opts.AxisOpts(name="累计占比(%)"))
)line = (Line().add_xaxis(top15_df['国家'].tolist()).add_yaxis("",[item*100 for item in top15_df['累计占比'].tolist()],)
)bar_line.overlap(line)
3.2 创建饼图 - 军费开支分布
pie = (Pie(init_opts=opts.InitOpts(theme=ThemeType.DARK, width="1000px", height="500px")).add("",pie_data,radius=["30%", "75%"],center=["50%", "50%"])
)
3.3 创建地图 - 军费开支地图
world_map = (Map(init_opts=opts.InitOpts(theme=ThemeType.DARK, width="1000px", height="500px")).add("",map_data,"world")
)
3.4 创建漏斗图 - 军费开支对比
funnel = (Funnel(init_opts=opts.InitOpts(theme=ThemeType.DARK, width="1000px", height="500px")).add("军费开支 (2024)(十亿美元)",funnel_data,label_opts=opts.LabelOpts(position="inside", formatter="{b}: {c}十亿美元"),)
)
3.5 创建雷达图 - 多维度对比
radar = (Radar(init_opts=opts.InitOpts(theme=ThemeType.DARK, width="1000px", height="500px")).add_schema(schema=radar_schema,splitarea_opt=opts.SplitAreaOpts(is_show=True, areastyle_opts=opts.AreaStyleOpts(opacity=0.1)),textstyle_opts=opts.TextStyleOpts(color="#ddd"),)
)
3.6 创建词云图 - 国家名称
wordcloud = (WordCloud(init_opts=opts.InitOpts(theme=ThemeType.DARK, width="1000px", height="500px")).add("", [list(z) for z in zip(df["国家"], df["军费开支 (2024)"])], word_size_range=[20, 100]))
)
四、创建可视化大屏
# 创建页面布局
page = Page(layout=Page.DraggablePageLayout,page_title="2024年全球军费开支 (2024)可视化分析",)
page.add(bar_line,pie,world_map,funnel,radar,wordcloud)# 渲染图表
page.render("global_military_spending_2024.html")
五、运行步骤
-
确保你的环境中安装了
pyecharts
和pandas
库。如果没有安装,可以通过以下命令安装:pip install pyecharts pandas
-
将上述代码保存为
military_expenditure_analysis.py
文件。 -
运行脚本:
python military_expenditure_analysis.py
-
浏览器打开生成的
military_expenditure_analysis.html
文件即可拖拽/缩放。
六、可视化结果分析
运行上述代码后,将生成一个名为 military_expenditure_analysis.html
的文件。打开这个文件,你将看到一个动态的、可交互的可视化大屏,展示了2024年全球军费开支Top 20国家的军费开支、占全球的份额、军费开支分布、军费开支对比以及国家词云图。
-
美国军费独占鳌头:美国军费开支达9970亿美元,占全球总额的36.7%,远超其他国家1。
-
中国位居第二:中国军费开支3140亿美元,占全球11.6%,体现了其持续推进的军事现代化计划9。
-
俄罗斯军费大幅增长:俄罗斯军费增长38%,达到1490亿美元,主要原因是俄乌战争的持续1。
-
欧洲军费显著增加:德国军费增长28%,波兰增长31%,反映欧洲地区对安全环境的担忧9。
-
前五国家占比高:前五名国家(美、中、俄、德、印)的军费开支占全球总额的60%5。
通过这次实践,我们不仅将枯燥的军费开支数据转化为了生动的图表,还通过颜色和布局的精心设计,增强了图表的视觉效果。这样的可视化大屏不仅适用于数据分析报告,也可以用于商业演示或教育展示,帮助观众更好地理解和记忆数据。