【数据可视化-106】华为2025上半年财报分析:用Python和Pyecharts打造炫酷可视化大屏

🧑 博主简介:曾任某智慧城市类企业算法总监,目前在美国市场的物流公司从事高级算法工程师一职,深耕人工智能领域,精通python数据挖掘、可视化、机器学习等,发表过AI相关的专利并多次在AI类比赛中获奖。CSDN人工智能领域的优质创作者,提供AI相关的技术咨询、项目开发和个性化解决方案等服务,如有需要请站内私信或者联系任意文章底部的的VX名片(ID:xf982831907)
💬 博主粉丝群介绍:① 群内初中生、高中生、本科生、研究生、博士生遍布,可互相学习,交流困惑。② 热榜top10的常客也在群里,也有数不清的万粉大佬,可以交流写作技巧,上榜经验,涨粉秘籍。③ 群内也有职场精英,大厂大佬,可交流技术、面试、找工作的经验。④ 进群免费赠送写作秘籍一份,助你由写作小白晋升为创作大佬。⑤ 进群赠送CSDN评论防封脚本,送真活跃粉丝,助你提升文章热度。有兴趣的加文末联系方式,备注自己的CSDN昵称,拉你进群,互相学习共同进步。

【数据可视化-106】华为2025上半年财报分析:用Python和Pyecharts打造炫酷可视化大屏


一、引言

近日,华为投资控股有限公司在北京金融资产交易所发布了2025年半年度报告。数据显示,华为在今年上半年营业收入4270.39亿元,较上年同期增长3.95%;实现净利润371.95亿元,同比下降32%1。最引人注目的是,华为上半年研发支出达到969.50亿元,同比增长9.04%,占营收比重高达22.7%1,创下历史新高。本文将使用Python的PyEcharts库对华为财务数据进行可视化分析,通过4个关键图表深入解读华为的业绩表现。

公众号有更全的数据可视化内容,详细资料可以添加博主微信公众号,公众号名称:NLP随手记

二、数据概览

首先,让我们快速浏览一下数据。这份数据包含了华为2025年上半年的营业收入、净利润、研发支出等关键财务指标。

三、数据可视化

我们的目标是创建一个动态的、可交互的可视化大屏,展示华为的营收与净利润对比、研发投入与占比、费用结构以及资产负债与现金流情况。整个大屏将以黑色为背景,使用多种颜色来增强视觉效果,让人有一种视觉上的冲击,首先导入必须的库。

python 复制代码
from pyecharts import options as opts
from pyecharts.charts import Bar, Line, Pie, Gauge, Grid, Page
from pyecharts.faker import Faker
from pyecharts.globals import ThemeType

3.1 创建柱状图 - 营收与净利润对比

python 复制代码
# 数据准备
categories = ['营收', '净利润']
values = [4270.39, 371.95]

bar = (
    Bar(init_opts=opts.InitOpts(theme=ThemeType.DARK, bg_color="#0d0d0d"))
    .add_xaxis(categories)
    .add_yaxis("2025年上半年", values, color="#ffcc00")
    .set_global_opts(
        title_opts=opts.TitleOpts(title="华为2025年上半年营收与净利润"),
        xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(rotate=-15)),
        yaxis_opts=opts.AxisOpts(name="亿元"),
    )
)

3.2 创建折线图 - 研发投入与占比

python 复制代码
r_d_expense = [300, 400, 500, 600, 700, 889, 969.5]  # 单位:亿元
r_d_ratio = [15.3, 15.9, 17.5, 19.5, 21.4, 21.7, 22.7]  # 占比百分比
years = ["2019", "2020", "2021", "2022", "2023", "2024", "2025H1"]
 
# 创建图表
line = (
    Line(init_opts=opts.InitOpts(theme=ThemeType.DARK, bg_color="#0d0d0d"))
    .add_xaxis(years)
    # 第一个Y轴系列(研发投入)
    .add_yaxis(
        "研发投入(亿元)",
        r_d_expense,
        color="#5793f3",
        yaxis_index=0,  # 使用第一个Y轴
        label_opts=opts.LabelOpts(is_show=False)
    )
    # 第二个Y轴系列(研发占比)
    .add_yaxis(
        "研发占比(%)",
        r_d_ratio,
        color="#d14a61",
        yaxis_index=1,  # 使用第二个Y轴
        label_opts=opts.LabelOpts(is_show=False)
    )
    # 扩展第二个Y轴
    .extend_axis(
        yaxis=opts.AxisOpts(
            name="研发占比(%)",
            type_="value",
            min_=0,
            max_=25,
            interval=5,
            axislabel_opts=opts.LabelOpts(formatter="{value}%"),
            splitline_opts=opts.SplitLineOpts(
                is_show=True, linestyle_opts=opts.LineStyleOpts(opacity=0.3)
            )
        )
    )
    .set_global_opts(
        title_opts=opts.TitleOpts(
            title="华为近7年研发投入与占比趋势",
            pos_left="center",
            title_textstyle_opts=opts.TextStyleOpts(color="#fff")
        ),
        tooltip_opts=opts.TooltipOpts(
            trigger="axis",
            axis_pointer_type="cross",
            formatter="""
            {b}<br/>
            {a0}: {c0} 亿元<br/>
            {a1}: {c1}%
            """
        ),
        legend_opts=opts.LegendOpts(pos_top=40, textstyle_opts=opts.TextStyleOpts(color="#fff")),
        xaxis_opts=opts.AxisOpts(
            axislabel_opts=opts.LabelOpts(color="#fff"),
            axisline_opts=opts.AxisLineOpts(linestyle_opts=opts.LineStyleOpts(color="#fff"))
        ),
        yaxis_opts=opts.AxisOpts(
            name="研发投入(亿元)",
            type_="value",
            min_=0,
            max_=1000,
            interval=200,
            axislabel_opts=opts.LabelOpts(formatter="{value}", color="#5793f3"),
            axisline_opts=opts.AxisLineOpts(linestyle_opts=opts.LineStyleOpts(color="#5793f3")),
            splitline_opts=opts.SplitLineOpts(
                is_show=True, linestyle_opts=opts.LineStyleOpts(opacity=0.3)
            )
        ),
    )
)

3.3 创建饼图 - 费用结构

python 复制代码
expense_categories = ['研发费用', '销售费用', '管理费用', '财务费用']
expense_values = [969.50, 393.76, 242.03, 50]  # 财务费用为估算值
pie = (
    Pie(init_opts=opts.InitOpts(theme=ThemeType.DARK, bg_color="#0d0d0d"))
    .add(
        "",
        [list(z) for z in zip(expense_categories, expense_values)],
        radius=["30%", "75%"],
        center=["50%", "50%"],
        rosetype="radius",
    )
    .set_global_opts(
        title_opts=opts.TitleOpts(title="华为2025年上半年费用结构"),
        legend_opts=opts.LegendOpts(orient="vertical", pos_top="15%", pos_left="2%"),
    )
)

3.4 创建仪表盘图 - 资产负债与现金流

python 复制代码
gauge = (
    Gauge(init_opts=opts.InitOpts(theme=ThemeType.DARK, bg_color="#0d0d0d"))
    .add(
        "资产负债率",
        [("资产负债率", 56.9)],
        radius="60%",
        center=["25%", "50%"],
        axisline_opts=opts.AxisLineOpts(
            linestyle_opts=opts.LineStyleOpts(
                color=[(0.3, "#67e0e3"), (0.7, "#37a2da"), (1, "#fd666d")], width=20
            )
        ),
        detail_label_opts=opts.LabelOpts(formatter="{value}%", font_size=16),
    )
    .add(
        "现金占比",
        [("现金占比", 14.5)],
        radius="60%",
        center=["75%", "50%"],
        axisline_opts=opts.AxisLineOpts(
            linestyle_opts=opts.LineStyleOpts(
                color=[(0.3, "#91cc75"), (0.7, "#fac858"), (1, "#ee6666")], width=20
            )
        ),
        detail_label_opts=opts.LabelOpts(formatter="{value}%", font_size=16),
    )
    .set_global_opts(
        title_opts=opts.TitleOpts(
            title="华为2025年上半年财务状况指标",
            pos_top=0,
            title_textstyle_opts=opts.TextStyleOpts(color="#fff")
        ),
        legend_opts=opts.LegendOpts(is_show=False),
    )
)

四、可视化大屏

python 复制代码
page = Page(layout=Page.DraggablePageLayout, page_title="华为2025年上半年财报分析")
page.add(bar, line, pie, gauge)
page.render("huawei_financial_analysis.html")

五、可视化结果分析

运行上述代码后,将生成一个名为"huawei_financial_analysis.html"的文件。打开这个文件,你将看到一个动态的、可交互的可视化大屏,展示了华为2025年上半年的财务数据。

  • 营收与净利润柱状图:使用明亮的黄色,直观地展示了华为的经济规模。柱状图的高度直接反映了GDP的总量,使得经济实力一目了然。
  • 研发投入与占比折线图:使用清新的蓝色和红色,展示了华为经济增长的速度。折线的起伏揭示了经济增长的动态变化,帮助我们识别增长最快和最慢的地区。
  • 费用结构饼图:通过饼图的形式,直观地展示了华为的费用分布情况,颜色深浅反映了费用的高低。
  • 资产负债与现金流仪表盘图:通过仪表盘的形式,直观地展示了华为的资产负债率和现金占比,颜色深浅反映了财务状况的好坏。

六、结论

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


相关推荐
(Charon)3 小时前
【C++面试】线程同步机制:互斥锁、条件变量、原子操作与读写锁
开发语言·c++·算法·面试
坊钰3 小时前
【LangChain框架入门级】10. 文本向量与向量数据库(Embedding / Redis / Pinecone / MMR)
数据库·python·langchain·embedding
benchmark_cc3 小时前
本地已有一年历史 K 线,第二天更新别只拉“昨天一天”
python·数据分析·pandas·量化交易·股票数据·quantdash
甜到心里的蛋糕3 小时前
云主机部署图片/视频管理系统的实践经验
python·音视频
CV工程师丁Sir3 小时前
ArkWeb 手记 06|window.open 与页面跳转拦截
开发语言·php·harmonyos
夜不会漫长3 小时前
C++:内存管理
java·开发语言·c++
小园子的小菜3 小时前
FastAPI 全方位入门实战:高性能 Python Web 框架开发指南
python·pycharm·fastapi
徐小黑ACG3 小时前
Golang 基础01
开发语言·后端·golang
Helix2503 小时前
Python爬虫零基础实战:3步抓取网页数据并导出Excel
爬虫·python·beautifulsoup·excel·python教程·requests·网页数据
进击的大海贼3 小时前
基于C#开发的久坐提醒工具
开发语言·c#