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

发布于:2025-09-06 ⋅ 阅读:(24) ⋅ 点赞:(0)

🧑 博主简介:曾任某智慧城市类企业算法总监,目前在美国市场的物流公司从事高级算法工程师一职,深耕人工智能领域,精通python数据挖掘、可视化、机器学习等,发表过AI相关的专利并多次在AI类比赛中获奖。CSDN人工智能领域的优质创作者,提供AI相关的技术咨询、项目开发和个性化解决方案等服务,如有需要请站内私信或者联系任意文章底部的的VX名片(ID:xf982831907

💬 博主粉丝群介绍:① 群内初中生、高中生、本科生、研究生、博士生遍布,可互相学习,交流困惑。② 热榜top10的常客也在群里,也有数不清的万粉大佬,可以交流写作技巧,上榜经验,涨粉秘籍。③ 群内也有职场精英,大厂大佬,可交流技术、面试、找工作的经验。④ 进群免费赠送写作秘籍一份,助你由写作小白晋升为创作大佬。⑤ 进群赠送CSDN评论防封脚本,送真活跃粉丝,助你提升文章热度。有兴趣的加文末联系方式,备注自己的CSDN昵称,拉你进群,互相学习共同进步。

在这里插入图片描述


一、引言

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

公众号有更全的数据可视化内容,详细资料可以添加博主微信公众号,公众号名称:NLP随手记
在这里插入图片描述

二、数据概览

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

三、数据可视化

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

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 创建柱状图 - 营收与净利润对比

# 数据准备
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 创建折线图 - 研发投入与占比

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 创建饼图 - 费用结构

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 创建仪表盘图 - 资产负债与现金流

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),
    )
)

四、可视化大屏

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

六、结论

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



网站公告

今日签到

点亮在社区的每一天
去签到