当前位置: 首页 > article >正文

Python使用Matplotlib绘制基础可视化图表

在Python中进行数据可视化最常用且功能强大的库是Matplotlib。它可以帮助你轻松绘制出柱状图、折线图、饼图、散点图、直方图、箱线图、热力图、雷达图等。在开始之前请确保你已经安装了Matplotlib库。如果没有可以在终端或命令行中运行以下命令进行安装pip install matplotlib1.折线图 (Line Chart)折线图非常适合展示数据随时间变化的趋势。import matplotlib.pyplot as plt # 解决中文显示问题 (Windows系统使用SimHeiMac系统可换成PingFang SC) plt.rcParams[font.sans-serif] [SimHei] plt.rcParams[axes.unicode_minus] False # 准备数据 months [1月, 2月, 3月, 4月, 5月, 6月] sales [78,85,74,95,84,80] # 绘制折线图 plt.figure(figsize(8, 5)) # 设置画布大小 plt.plot(months, sales, markero, colorblue, linewidth2, label销售额) # 添加标题和标签 plt.title(上半年销售额趋势) plt.xlabel(月份) plt.ylabel(销售额元) plt.legend() # 显示图例 plt.grid(True, linestyle--, alpha0.5) # 添加网格线 plt.show()效果图2.柱状图 (Bar Chart)柱状图适合比较不同类别之间的数值大小。import matplotlib.pyplot as plt # 解决中文显示问题 plt.rcParams[font.sans-serif] [SimHei] plt.rcParams[axes.unicode_minus] False # 准备数据 products [手机, 电脑, 耳机, 平板, 手表] sales [78,85,74,95,84] # 绘制柱状图 plt.figure(figsize(8, 5)) plt.bar(products, sales, colororange, width0.6) # 在柱子顶部添加具体的数值标签 for index, value in enumerate(sales): plt.text(index, value 10, str(value), hacenter) # 添加标题和标签 plt.title(不同产品销量对比) plt.xlabel(产品) plt.ylabel(销量) plt.show()效果图3.饼图 (Pie Chart)饼图主要用于展示各部分数据在整体中的占比关系。import matplotlib.pyplot as plt # 解决中文显示问题 plt.rcParams[font.sans-serif] [SimHei] plt.rcParams[axes.unicode_minus] False # 准备数据 channels [搜索引擎, 短视频, 社交媒体, 直接访问, 邮件] users [1000, 500, 300, 400, 200] # 绘制饼图 plt.figure(figsize(7, 7)) plt.pie( users, labelschannels, autopct%.1f%%, # 显示百分比并保留1位小数 startangle90, # 设置饼图起始角度 counterclockFalse # 按顺时针方向绘制 ) plt.title(用户来源占比) plt.show()效果图4.散点图 (Scatter Plot)测试数据模拟了100名学生的“每日学习时长”与“期末考试成绩”之间的关系用来观察两者是否存在正相关。import matplotlib.pyplot as plt import numpy as np # 设置中文显示 plt.rcParams[font.sans-serif] [SimHei] plt.rcParams[axes.unicode_minus] False # 生成测试数据100个学生的学习时长(1-8小时)和对应的成绩 np.random.seed(42) # 固定随机种子保证每次运行结果一致 study_hours np.random.uniform(1, 8, 100) # 成绩 学习时长 * 8 基础分40 随机波动 scores study_hours * 8 40 np.random.normal(0, 5, 100) # 绘制散点图 plt.figure(figsize(8, 5)) plt.scatter(study_hours, scores, colorskyblue, edgecolorsblack, alpha0.7) plt.title(学习时长与考试成绩的关系, fontsize14) plt.xlabel(每日学习时长 (小时)) plt.ylabel(考试成绩 (分)) plt.grid(True, linestyle--, alpha0.5) plt.show()效果图5.直方图 (Histogram)测试数据模拟了1000名成年男性的身高数据符合正态分布用来展示身高的整体分布区间。import matplotlib.pyplot as plt import numpy as np # 设置中文显示 plt.rcParams[font.sans-serif] [SimHei] plt.rcParams[axes.unicode_minus] False # 生成测试数据1000名男性的身高 (均值175cm标准差7cm) np.random.seed(42) heights np.random.normal(175, 7, 1000) # 绘制直方图 plt.figure(figsize(8, 5)) # bins30 表示将数据分成30个区间color设置颜色edgecolor设置柱子边框色 plt.hist(heights, bins30, colormediumseagreen, edgecolorblack, alpha0.7) plt.title(成年男性身高分布情况, fontsize14) plt.xlabel(身高 (cm)) plt.ylabel(人数) plt.grid(axisy, linestyle--, alpha0.5) plt.show()效果图6.箱线图 (Box Plot)测试数据模拟了 A、B、C 三个不同班级学生的数学成绩用来对比各班的平均水平、波动范围以及识别异常低分/高分。import matplotlib.pyplot as plt import numpy as np # 设置中文显示 plt.rcParams[font.sans-serif] [SimHei] plt.rcParams[axes.unicode_minus] False # 生成测试数据三个班级的数学成绩 np.random.seed(42) class_A np.random.normal(75, 10, 100) # A班均值75标准差10 class_B np.random.normal(80, 8, 100) # B班均值80标准差8 class_C np.random.normal(70, 12, 100) # C班均值70标准差12波动更大 # 将数据组合成列表传入 data_to_plot [class_A, class_B, class_C] labels [A班, B班, C班] # 绘制箱线图 plt.figure(figsize(8, 5)) plt.boxplot(data_to_plot, labelslabels, patch_artistTrue, boxpropsdict(facecolorlightcoral, colorblack), medianpropsdict(colorwhite)) plt.title(三个班级数学成绩分布对比, fontsize14) plt.ylabel(数学成绩) plt.grid(axisy, linestyle--, alpha0.5) plt.show()效果图7.热力图 (Heatmap)绘制热力图我们需要用到更美观的seaborn库。请先在终端或命令行中运行以下命令安装依赖pip install matplotlib seaborn numpy pandas测试数据模拟了一周7天内某电商平台在24小时内的每小时订单量矩阵用来直观查看哪个时间段是下单高峰期。import matplotlib.pyplot as plt import seaborn as sns import numpy as np import pandas as pd # 设置中文显示 plt.rcParams[font.sans-serif] [SimHei] plt.rcParams[axes.unicode_minus] False # 生成测试数据7天 x 24小时的订单量矩阵 np.random.seed(42) days [周一, 周二, 周三, 周四, 周五, 周六, 周日] hours [f{h}点 for h in range(24)] # 模拟数据周末和晚间订单量较高 orders np.random.randint(10, 100, size(7, 24)) orders[5:, 18:23] 50 # 周末晚间增加订单量 # 将数据转换为 DataFrame df pd.DataFrame(orders, indexdays, columnshours) # 绘制热力图 plt.figure(figsize(14, 6)) # annotTrue 显示数值fmtd 表示显示为整数cmap 设置颜色主题 sns.heatmap(df, annotFalse, fmtd, cmapYlOrRd, cbar_kws{label: 订单量}) plt.title(一周内每小时订单量热力图, fontsize14) plt.xlabel(时间) plt.ylabel(星期) plt.show()效果图8.雷达图radar chart雷达图也叫蜘蛛图非常适合用来展示多维度的数据比如评估一个人的综合能力、对比不同产品的性能指标等。在 Python 中我们可以使用matplotlib的极坐标系polar coordinates来绘制。以下是包含完整测试数据的可运行实例模拟了两名游戏角色的六维能力对比import matplotlib.pyplot as plt import numpy as np # 设置中文显示 (Windows系统使用SimHeiMac系统可换成PingFang SC) plt.rcParams[font.sans-serif] [SimHei] plt.rcParams[axes.unicode_minus] False # 1. 准备测试数据 # 设定6个能力维度 categories [攻击, 防御, 速度, 耐力, 技术, 策略] num_vars len(categories) # 角色A的能力值假设是均衡型战士 stats_A [85, 90, 70, 88, 75, 80] # 角色B的能力值假设是高攻高速刺客 stats_B [95, 60, 92, 65, 88, 70] # 2. 计算每个维度的角度 # 将圆周(2*pi)平均分成 N 份 angles np.linspace(0, 2 * np.pi, num_vars, endpointFalse).tolist() # 3. 闭合图形 # 雷达图需要首尾相连所以要把第一个维度的角度和数据追加到列表末尾 stats_A stats_A[:1] stats_B stats_B[:1] angles angles[:1] # 4. 创建极坐标画布并绘图 fig, ax plt.subplots(figsize(8, 8), subplot_kwdict(polarTrue)) # 绘制角色A的折线和填充区域 ax.plot(angles, stats_A, colorblue, linewidth2, linestylesolid, label角色 A (均衡型)) ax.fill(angles, stats_A, colorblue, alpha0.2) # 绘制角色B的折线和填充区域 ax.plot(angles, stats_B, colorred, linewidth2, linestylesolid, label角色 B (刺客型)) ax.fill(angles, stats_B, colorred, alpha0.2) # 5. 美化图表 # 设置半径能力值的范围留出一点空间给图例 ax.set_ylim(0, 100) # 设置维度标签攻击、防御等 ax.set_xticks(angles[:-1]) ax.set_xticklabels(categories, size12) # 添加图例 plt.legend(locupper right, bbox_to_anchor(1.3, 1.1)) # 添加标题 plt.title(游戏角色六维能力对比雷达图, size16, pad20) plt.show()效果图

相关文章:

Python使用Matplotlib绘制基础可视化图表

在Python中进行数据可视化,最常用且功能强大的库是 Matplotlib。它可以帮助你轻松绘制出柱状图、折线图、饼图、散点图、直方图、箱线图、热力图、雷达图等。在开始之前,请确保你已经安装了Matplotlib库。如果没有,可以在终端或命令行中运行以…...

ARM多核架构中MPIDR寄存器详解与应用实践

1. ARM多核架构与MPIDR寄存器概述在现代ARM多核处理器设计中,处理器亲和性(Processor Affinity)是实现高效任务调度的基础机制。作为系统级程序员或内核开发者,理解MPIDR(Multiprocessor Affinity Register&#xff09…...

HGO-YOLO:轻量级实时异常行为检测算法解析

1. 项目概述:轻量级异常行为检测的突破性方案在智能监控和公共安全领域,实时检测异常行为(如跌倒、斗殴、吸烟)一直是个技术难点。传统方案要么依赖人力监控效率低下,要么计算资源消耗过大难以落地。我们团队开发的HGO…...

企业级AI助手框架:私有化部署、工具调用与RAG实战指南

1. 项目概述:一个面向企业级应用的开源AI助手框架最近在GitHub上闲逛,发现了一个挺有意思的项目,叫entaoai。第一眼看到这个仓库名,我下意识地觉得这可能又是一个基于某个大模型API的简单封装工具。但点进去仔细研究了一下源码和文…...

DDR内存RAS技术:原理、实现与优化实践

1. DDR内存RAS技术概述在现代计算架构中,内存子系统承担着数据暂存与高速交换的关键职能。随着DDR4/5内存接口速率突破6400MT/s,以及半导体工艺进入10nm以下节点,内存系统的可靠性(Reliability)、可用性(Av…...

在Taotoken平台试用不同模型后对生成效果与速度的直观感受

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 在Taotoken平台试用不同模型后对生成效果与速度的直观感受 作为一名开发者,在构建应用时,选择合适的模型往…...

3个步骤掌握APK Installer:在Windows上直接安装Android应用的终极指南

3个步骤掌握APK Installer:在Windows上直接安装Android应用的终极指南 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 你是否厌倦了在Windows电脑上使用笨重…...

近屿AI学:白天做运维,晚上学AI,两天入职

何屿(化名)白天还在做传统运维,晚上已经开始补AI课程。听起来有点折腾,但他比谁都清楚,稳定并不等于安全。AI兴起后,岗位要求正在变,旧经验能撑多久,他心里没底。与其等到被动调整&a…...

科研人员实用:OpenClaw批量下载文献、整理参考文献格式,自动生成论文引用列表

科研利器:OpenClaw——自动化文献下载、格式整理与引用列表生成实战指南摘要 在科研工作中,文献的收集、管理与引用是耗时耗力的关键环节。面对海量的学术资源,如何高效地批量下载所需文献、规范整理参考文献格式、并快速生成符合要求的论文引…...

E-GEO:基于多智能体架构的AI搜索引擎优化工具实战指南

1. 项目概述:E-GEO,一个为AI搜索引擎而生的零门槛优化工具 如果你和我一样,最近几个月一直在琢磨怎么让自家网站的内容在ChatGPT、Claude、Perplexity这些AI搜索引擎里排得更靠前,那你肯定听说过“生成式引擎优化”这个概念。传统…...

近屿AI学:产品经理转AI开发,开局20K

许知言(化名)做过B端产品经理,也有悉尼大学硕士背景。听起来,她本可以继续走产品路线。但AI开始快速改变产品形态后,她心里一直有个问题:如果未来的产品经理不懂AI开发,会不会很快被甩开&#x…...

OmenSuperHub终极指南:免费解锁惠普OMEN游戏本隐藏性能的完整教程

OmenSuperHub终极指南:免费解锁惠普OMEN游戏本隐藏性能的完整教程 【免费下载链接】OmenSuperHub 使用 WMI BIOS控制性能和风扇速度,自动解除DB功耗限制。 项目地址: https://gitcode.com/gh_mirrors/om/OmenSuperHub OmenSuperHub是一款专为惠普…...

初创团队如何利用Token Plan套餐控制大模型API开发成本

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 初创团队如何利用Token Plan套餐控制大模型API开发成本 对于初创团队而言,在原型开发和产品迭代阶段,技术选…...

沈阳哪家GEO优化公司靠谱

2026年,AI搜索与生成式引擎普及,GEO优化成为企业获取精准流量的核心手段。在沈阳,如何筛选具备技术实力与落地能力的服务商,成为企业主关注焦点。以下基于公开信息与行业观察,梳理几家代表性机构供选型参考。辽宁云界数…...

5D动感影院|打造沉浸式体验的新一代互动影院解决方案

随着数字技术与沉浸式体验的不断发展,传统影院已经无法完全满足现代观众对互动性与真实感的需求。在这一背景下,5D动感影院应运而生,凭借多维度感官融合技术,为观众带来前所未有的沉浸式观影体验。作为集视觉、听觉、触觉及环境特…...

金属表面缺陷智能检测新突破

篇名问题,背景方法结论金属表面缺陷自适应分割算法1.金属表面划痕 2.金属表面凹凸 3.金属表面污点 4.金属表面刮擦 5.金属表面裂纹2.1多方向灰度波动分析 2.2领域灰度差分割算法 2.3PCA法图像压缩本文算法与其他算法相比,具有通用性好、分割准确度高等优…...

基于梯度权值追踪的无监督域自适应优化研究

SummaryArticleObjectiveMethodComments基于梯度权值追踪的域自适应分类研究解决无监督领域自适应方法中存在的过拟合问题文章采用了基于梯度权值追踪的剪枝与优化算法来解决过拟合问题。该算法首先对样本进行训练,识别出重要的连接,并用权值的绝对值来量…...

5个关键步骤:在PC上部署高性能yuzu Switch模拟器

5个关键步骤:在PC上部署高性能yuzu Switch模拟器 【免费下载链接】yuzu 任天堂 Switch 模拟器 项目地址: https://gitcode.com/GitHub_Trending/yu/yuzu yuzu是一款开源的任天堂Switch模拟器,让玩家能够在Windows、Linux和macOS系统上流畅运行Swi…...

AI治理实战:从公平性、可解释性到MLOps全流程落地

1. 项目概述与核心价值最近在整理开源项目时,发现了一个名为“AI_governance”的仓库,作者是bhavya7995。这个标题立刻引起了我的兴趣。在AI技术飞速渗透到各行各业,从代码生成到内容创作,从自动驾驶到医疗诊断的今天,…...

AI赋能图像分割:跨界应用的未来

自然图像域自适应分割是一种技术,通过强化不同数据集(域)的图像样本的边界(boundary)和不确定区域(entropy)特征的一致性,以实现更好的域自适应的分割结果。自然图像域自适应分割技术…...

构建增强型ClawHub数据层API:基于NestJS与MongoDB的工程实践

1. 项目概述:ClawHub Layer API 是什么?如果你正在开发一个AI应用,或者想深度分析ClawHub上那超过3.6万个技能(Skill),你可能会发现官方的API有点“不够用”。它提供了基础信息,但当你需要全文搜…...

ARM架构浮点运算与FPEXC/FPSCR寄存器详解

1. ARM架构浮点运算基础在嵌入式系统和移动计算领域,ARM处理器凭借其高效的能耗比占据主导地位。浮点运算作为科学计算、图形处理和机器学习的基础,其性能直接影响着整个系统的表现。ARM架构通过专门的浮点运算单元和配套的寄存器系统,为开发…...

AI模型API网关:统一管理多厂商大模型调用,实现高效治理与成本控制

1. 项目概述与核心价值最近在折腾AI应用开发,发现一个挺普遍的问题:当你的应用需要同时调用多个不同厂商的大模型API时,管理起来简直是一场噩梦。每个厂商的接口地址、认证方式、请求格式、计费逻辑都不一样,更别提还有速率限制、…...

FPGA加速的医疗影像深度学习分类系统实现14.5μs超低延迟

1. 项目背景与核心挑战在医疗影像分析领域,淋巴细胞亚群(如T4、T8和B细胞)的快速准确分类对疾病诊断和治疗监测至关重要。传统方法依赖荧光标记和人工镜检,存在操作复杂、成本高昂且主观性强的问题。我们团队开发的基于明场显微镜…...

Homepage:构建个人统一仪表盘,聚合数字服务与状态监控

1. 项目概述:为什么我们需要一个统一的“数字家园”仪表盘?如果你和我一样,每天的工作和生活被几十个网页应用、服务状态、待办事项和书签链接所淹没,那么你一定能理解那种在浏览器标签页海洋里“迷路”的烦躁感。今天要聊的这个项…...

抽水蓄能电站岔管结构智能优化【附模型】

✨ 长期致力于抽水蓄能、球形钢岔管、智能优化、鲸鱼算法、静力分析研究工作,擅长数据搜集与处理、建模仿真、程序编写、仿真设计。 ✅ 专业定制毕设、代码 ✅ 如需沟通交流,点击《获取方式》 (1)球形钢岔管参数化有限元建模&…...

改进灰狼算法天线优化设计【附代码】

✨ 长期致力于灰狼优化算法、直线阵列天线、平面阵列天线、微带天线研究工作,擅长数据搜集与处理、建模仿真、程序编写、仿真设计。 ✅ 专业定制毕设、代码 ✅ 如需沟通交流,点击《获取方式》 (1)Logistic-Tent双重混沌初始化与非…...

铝板椭圆成像无线传输损伤检测【附仿真】

✨ 长期致力于兰姆波、虚拟时间反转、损伤成像、压电陶瓷研究工作,擅长数据搜集与处理、建模仿真、程序编写、仿真设计。 ✅ 专业定制毕设、代码 ✅ 如需沟通交流,点击《获取方式》 (1)铝板Lamb波频散特性与压电陶瓷PZT优化&#…...

多物流机器人任务调度与路径规划【附程序】

✨ 长期致力于物流机器人、任务调度、路径规划、沙猫群算法研究工作,擅长数据搜集与处理、建模仿真、程序编写、仿真设计。 ✅ 专业定制毕设、代码 ✅ 如需沟通交流,点击《获取方式》 (1)栅格-拓扑双层地图建模与任务分配&#xf…...

FPGA阵列信号处理矩阵算子高性能实现【附代码】

✨ 长期致力于自动驾驶、阵列信号处理、矩阵特征值分解、Jacobi旋转、三角矩阵求逆、序列排序、序列部分排序研究工作,擅长数据搜集与处理、建模仿真、程序编写、仿真设计。 ✅ 专业定制毕设、代码 ✅ 如需沟通交流,点击《获取方式》 (1&…...