【数据可视化-111】93大阅兵后的军费开支情况———2024年全球军费开支分析:用Python和Pyecharts打造炫酷可视化大屏

🧑 博主简介:曾任某智慧城市类企业算法总监,目前在美国市场的物流公司从事高级算法工程师一职,深耕人工智能领域,精通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")

五、运行步骤

  1. 确保你的环境中安装了 pyechartspandas 库。如果没有安装,可以通过以下命令安装:

    pip install pyecharts pandas
    
  2. 将上述代码保存为 military_expenditure_analysis.py 文件。

  3. 运行脚本:

    python military_expenditure_analysis.py
    
  4. 浏览器打开生成的 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。

通过这次实践,我们不仅将枯燥的军费开支数据转化为了生动的图表,还通过颜色和布局的精心设计,增强了图表的视觉效果。这样的可视化大屏不仅适用于数据分析报告,也可以用于商业演示或教育展示,帮助观众更好地理解和记忆数据。


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

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

相关文章

3.2.Maven-概述-介绍安装

一.介绍:二.安装:Maven的安装比较简单,因为他是绿色版的软件,官方给我们提供Maven的安装包就是一个zip压缩包,在进行Maven安装以及配置的时候,主要进行如下4步操作:第一步:把官方提供…

Kafka面试精讲 Day 14:集群扩容与数据迁移

【Kafka面试精讲 Day 14】集群扩容与数据迁移 在“Kafka面试精讲”系列的第14天,我们将深入探讨 Kafka 运维中最关键的操作之一:集群扩容与数据迁移。随着业务增长,原始 Kafka 集群可能面临磁盘不足、吞吐瓶颈或节点负载不均等问题&#xff…

字节一面 面经(补充版)

什么是RabbitMQ,特点是什么怎么理解保障消息的一致性String、StringBuffer、StringBuilder解释一下线程安全先操作数据库再删缓存还是先删缓存再操作数据库这种办法能杜绝数据不一致问题吗解释一下AOP介绍Redis的特点(Redis比较快)Redis为什么…

【MFC】对话框属性:Absolute Align(绝对对齐)

前言 本文介绍对话框属性中的Absolute Align(绝对对齐),同时给出相关示例便于理解。 目录1 位置2 详解3 示例1 位置 首先介绍一下这个属性在哪里。 在资源视图中双击对话框节点,打开该对话框; 鼠标右键工作区空白处,单击属性&…

【从0开始学习Java | 第17篇】集合(中-Set部分)

文章目录Java集合之Set:无序不重复的元素容器一、Set接口的核心特性二、常用实现类及底层原理1. HashSet:基于哈希表的高效实现2. LinkedHashSet:保留插入顺序的哈希实现3. TreeSet:基于红黑树的排序实现三、实现类对比与选择建议…

玩转Docker | 使用Docker部署dufs文件管理工具

玩转Docker | 使用Docker部署dufs文件管理工具 前言 一、 dufs介绍 Dufs简介 核心特性 📁 静态文件服务 💾 文件夹打包下载 📤 拖拽上传文件/文件夹 ✏️ 文件在线创建、编辑与搜索 ⏳ 断点续传与部分传输 🔐 细粒度访问控制 🔒 HTTPS 安全传输 🌐 WebDAV 兼容支持…

【混合开发】vue+Android、iPhone、鸿蒙、win、macOS、Linux之android 把assert里的dist.zip 包解压到sd卡里

一图胜千言 上一篇有 <!-- 读写外部存储 --> <uses-permission android:name"android.permission.WRITE_EXTERNAL_STORAGE"android:maxSdkVersion"28"/> <uses-permission android:name"android.permission.READ_EXTERNAL_STORAGE&qu…

线程的创建.销毁

线程线程的创建在 C 中&#xff0c;线程的创建核心是通过std::thread类实现的&#xff0c;其构造函数需要传入一个可调用对象&#xff08;Callable Object&#xff09;作为线程入口。可调用对象包括普通函数、lambda 表达式、函数对象&#xff08;functor&#xff09;、类的成员…

MySQL基础全面解析

MySQL作为最流行的关系型数据库管理系统之一&#xff0c;是每一位开发者必备的核心技能。本文将系统性地解析MySQL的基础知识&#xff0c;结合关键概念与实战应用&#xff0c;帮助您构建扎实的数据库基础。1. SQL与NoSQL的本质区别SQL&#xff08;结构化查询语言&#xff09;数…

4、幽络源微服务项目实战:后端公共模块创建与引入多租户模块

前言 上节我们将电网巡检系统的前端vue2项目创建、配置&#xff0c;并构建了最基础的多租户界面&#xff0c;本节来继续构建后端的公共模块、多租户模块&#xff0c;并将公共模块引入到多租户模块中。 创建公共模块和多租户模块 在back父工程下创建两个Module&#xff0c;和…

STM32学习路线开启篇:芯片简介与课程简介

编写不易,请多多指教,觉得不错可以关注一下,相互学习 前言 一、课程配套资源 1、面包板 2、面包板专用的跳线 3、面包板的飞线 4、杜邦线 5、STM32F103C8T6最小系统板 6、0.96寸的OLED显示屏模块 7、电位器 8、按钮 9、LED灯 10、STLINK 11、USB转串口(TTL)模块 12、源蜂鸣器模…

图像直方图

图像直方图就是用来统计图像像素值分布的。灰度图分布读取灰度图phone cv2.imread(phone.png, cv2.IMREAD_GRAYSCALE) a phone.ravel() plt.hist(a, bins256) plt.show()如何可以获得当前像素值分布读取各通道的像素值分布img cv2.imread(phone.png) colors (b, g, r) for …

分类别柱状图(Vue3)

效果图&#xff1a;需求&#xff1a;男女年龄段占比<template><div class"go-ClassifyBar01"><v-chartref"vChartRef":option"option"style"width: 100%; height: 800px"></v-chart></div> </templa…

Apache Dubbo学习笔记-使用Dubbo发布、调用服务

Apache Dubbo经常作为一个RPC框架来使用&#xff0c;这篇文章主要介绍使用Dubbo配合注册中心来发布和调用服务。 Apache Dubbo和Spring Boot、JDK的版本对应关系。 Dubbo 分支最新版本JDKSpring Boot组件版本详细说明3.3.x (当前文档)3.3.08, 17, 212.x、3.x详情- 版本变更记录…

Python学习——字典和文件

前面python的学习中我们已经学习了python的函数和列表元组相关的内容&#xff0c;接下来我们来学习剩下的python语法&#xff1a;字典和文件 相关代码已经上传到作者的个人gitee&#xff1a;楼田莉子/Python 学习喜欢请点个赞谢谢 目录 字典 创建字典 查找key 新增/修改元素 …

swiper插件的使用

官方网址&#xff1a;https://www.swiper.com.cn/ 1、点击导航栏&#xff0c;获取Swiper里边的下载Swiper 2、选择要下载的版本【本次案例版本5.4.5】&#xff0c;然后解压缩文件夹&#xff0c;拿到swiper.min.js和swiper.min.css文件&#xff0c;放到项目对应的css文件和js文…

Vue3+JS 组合式 API 实战:从项目痛点到通用 Hook 封装

Vue3 组合式 API 的实战技巧 —— 组合式 API 帮我解决了不少 Options API 难以应对的问题&#xff0c;尤其是在代码复用和复杂组件维护上。一、为什么放弃 Options API&#xff1f;聊聊三年项目里的真实痛点​刚接触 Vue3 时&#xff0c;我曾因 “惯性” 继续用 Options API 写…

把 AI 塞进「电梯按钮」——基于 64 kB 零样本声纹的离线故障预测按钮

标签&#xff1a;零样本声纹、电梯按钮、离线 AI、TinyML、RISC-V、低功耗、GD32V303、故障预警 ---- 1. 背景&#xff1a;为什么按钮要「听声音」&#xff1f; 全国 700 万台电梯&#xff0c;按钮故障率 0.3 %/年&#xff0c;却常出现&#xff1a; • 机械卡滞、触点氧化&…

清华大学联合项目 论文解读 | MoTo赋能双臂机器人:实现零样本移动操作

研究背景 移动操作是机器人领域的核心挑战&#xff0c;它使机器人能够在各种任务和动态日常环境中为人类提供帮助。传统的移动操作方法由于缺乏大规模训练&#xff0c;往往难以在不同任务和环境中实现泛化。而现有操作基础模型虽在固定基座任务中表现出强泛化性&#xff0c;却无…

go webrtc - 2 webrtc重要概念

webrtc是一套音视频传输技术生态&#xff0c;不是一个协议或一个什么东西。3种模式本文基于 SFU 形式阐述&#xff01;重要概念&#xff1a;sfu 服务负责&#xff1a;信令 服务负责&#xff1a;peerConnection&#xff1a;track&#xff1a;房间&#xff1a;虚拟分组概念用户&a…