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

六、结论

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


相关推荐
大虾别跑几秒前
vc无法启动
java·开发语言
郭老二6 分钟前
【JAVA】从入门到放弃-01-HelloWorld
java·开发语言
北城以北888818 分钟前
JavaScript--基础ES(一)
开发语言·javascript·intellij-idea
没有梦想的咸鱼185-1037-166320 分钟前
【遥感技术】从CNN到Transformer:基于PyTorch的遥感影像、无人机影像的地物分类、目标检测、语义分割和点云分类
pytorch·python·深度学习·机器学习·数据分析·cnn·transformer
say_fall24 分钟前
C语言底层学习(2.指针与数组的关系与应用)(超详细)
c语言·开发语言·学习
钟爱蛋炒饭26 分钟前
基于深度学习神经网络协同过滤模型(NCF)的视频推荐系统
python·神经网络·机器学习
eqwaak026 分钟前
Python Pillow库详解:图像处理的瑞士军刀
开发语言·图像处理·python·语言模型·pillow
柯南二号35 分钟前
【Java后端】《Spring Boot Starter 原理详解》博客
java·开发语言·spring boot
RE-190137 分钟前
制冷剂中表压对应温度值的获取(Selenium)
爬虫·python·selenium·jupyter·pandas·danfoss·reftools
测试老哥43 分钟前
Python+selenium自动化生成测试报告
自动化测试·软件测试·python·selenium·测试工具·职场和发展·测试用例