手把手教你用Matplotlib完成数据可视化

【数据可视化入门】Python散点图全攻略:Matplotlib、Seaborn、Pyecharts实战代码大公开! 在数据分析的世界里,数据可视化是将复杂数据转化为直观图形的重要手段。今天,我们将手把手教你如何使用Python中的Matplotlib、Seaborn和Pyecharts三大库来绘制散点图,让你的数据展示更加生动有趣! 阅读详情

一、引言

Matplotlib是Python生态系统中最为核心和广泛使用的数据可视化库,它为用户提供了强大的二维图形绘制能力,其设计哲学在于以简洁的代码创建出具有出版物质量的静态、交互乃至动态的图表。

在功能上,Matplotlib不仅支持包括折线图、柱状图、散点图、直方图、饼图在内的多种基础图表类型,还允许用户对图表的每一个视觉元素——如坐标轴、图例、标签、线条、颜色和文本——进行像素级精度的细致控制。这种高度的可定制性使其能够满足从快速数据探索到复杂学术图表绘制的各类需求。 

作为许多其他高级可视化库(如Pandas、Seaborn)的底层引擎,Matplotlib构成了Python数据科学栈不可或缺的一环,是数据分析和科学研究领域进行有效沟通与洞察发现的必备工具。

二、 环境初始化与核心概念解析

(1)环境配置

在使用Matplotlib之前,需要先确保它已被安装在你的Python环境中。最常用的方法是使用pip包管理器

pip install matplotlib


#在Python社区,为了代码的简洁和一致性,大家普遍遵循一些导入惯例。
#Matplotlib的标准导入语句是:

import matplotlib.pyplot as plt
  • matplotlib 是主库,包含了所有构建块和功能。

  • pyplot 是一个子模块,它提供了一个类似于MATLAB的命令式接口,极大地简化了常见绘图任务的创建过程。你可以将其视为一个“快捷方式”集合。

#绘制线图和散点图
plot()

#绘制散点图
scatter()

#绘制垂直条形图和水平条形图
bar()

#绘制直方图
hist()

#绘制饼图
pie()

#绘制图像
imshow()

#创建子图
subplots()

三、图表元素的定制与美学提升

(1)核心信息标注

  • 标题:告诉别人这个图是关于什么的

  • 坐标轴标签:说明X轴和Y轴代表什么

  • 图例:当有多条线时,说明每条线是什么

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 10, 100)
y = np.sin(x)

fig, ax = plt.subplots()

ax.plot(x, y, label='正弦波')
ax.set_title('我的第一个图表')      # 加标题
ax.set_xlabel('时间')             # X轴标签
ax.set_ylabel('振幅')             # Y轴标签  
ax.legend()                      # 显示图例

plt.show()

(2)视觉样式设计

颜色、线型、标记符号与透明度的自定义配置

fig, ax = plt.subplots()

# 一条漂亮的蓝色虚线,带圆圈标记
ax.plot(x, y, 
        color='blue',      # 颜色
        linestyle='--',    # 线条样式:- 实线 -- 虚线 : 点线
        linewidth=2,       # 线条粗细
        marker='o',        # 数据点标记:o 圆圈 s 方块 ^ 三角形
        markersize=4,      # 标记大小
        alpha=0.7)         # 透明度(0-1之间)

plt.show()

(3)高效绘图实践

  • 使用内置样式库快速实现图表风格的专业化切换

# 查看所有可用样式
print(plt.style.available)

# 使用内置样式(放在最开头)
plt.style.use('seaborn-v0_8')  # 推荐这个,现代又专业

# 也可以用这些:
# plt.style.use('ggplot')      # R语言风格
# plt.style.use('seaborn-whitegrid')  # 白色网格

fig, ax = plt.subplots()
ax.plot(x, y, label='正弦波')
ax.set_title('用了样式的图表')
ax.set_xlabel('时间')
ax.set_ylabel('振幅')
ax.legend()

plt.show()

三、 基础图表类型的绘制与实践

(1)折线图:展现数据趋势与连续性变化

import matplotlib.pyplot as plt

# 简单例子:画一条线
x = [1, 2, 3, 4, 5]
y = [2, 4, 1, 5, 3]

plt.plot(x, y)  # 就这一行,折线图出来了!
plt.show()

(2)柱状图:进行类别间的比较分析

python
# 比较不同水果的销量
水果 = ['苹果', '香蕉', '橙子']
销量 = [15, 12, 8]

plt.bar(水果, 销量)  # 用bar()代替plot()
plt.show()

(3)散点图:探索变量间的相关性与分布模式

# 看学习时间和考试成绩的关系
学习时间 = [2, 5, 3, 8, 6, 1, 4]
考试成绩 = [65, 85, 70, 95, 80, 50, 75]

plt.scatter(学习时间, 考试成绩)  # 用scatter()
plt.show()

(4)直方图与箱线图:揭示数据集的分布特征与异常值

# 看班级成绩分布
成绩 = [75, 82, 65, 90, 78, 85, 92, 60, 72, 88]

plt.hist(成绩)  # 用hist()
plt.show()

#箱线图
plt.boxplot(成绩)  # 用boxplot()
plt.show()

(5)饼图与面积图:表达整体与部分的构成关系

# 看班级男女比例
labels = ['男生', '女生']
sizes = [25, 20]

plt.pie(sizes, labels=labels)  # 用pie()
plt.show()

五、 复杂布局

使用subplots方法创建与管理网格化布局

  • 基础多子图
import matplotlib.pyplot as plt

# 创建1行2列的子图
fig, (ax1, ax2) = plt.subplots(1, 2, figsize=(10, 4))

# 在第一个子图画折线图
ax1.plot([1, 2, 3, 4], [1, 4, 2, 3])
ax1.set_title('销售趋势')

# 在第二个子图画柱状图
ax2.bar(['A', 'B', 'C'], [30, 45, 25])
ax2.set_title('产品销量')

plt.tight_layout()
plt.show()
  • 2×2网格子图
# 创建2行2列的子图
fig, axs = plt.subplots(2, 2, figsize=(10, 8))

# 在四个子图上分别画图
axs[0, 0].plot([1, 2, 3], [1, 2, 1])
axs[0, 0].set_title('折线图')

axs[0, 1].scatter([1, 2, 3], [1, 2, 1])
axs[0, 1].set_title('散点图')

axs[1, 0].bar(['X', 'Y', 'Z'], [3, 1, 2])
axs[1, 0].set_title('柱状图')

axs[1, 1].pie([30, 70], labels=['A', 'B'])
axs[1, 1].set_title('饼图')

plt.tight_layout()
plt.show()

1. Matplotlib 数据可视化 Matplotlib 数据可视化 Day1 文章目录Matplotlib 数据可视化 Day1前言一、初识Matplotlib二、简单的绘图示例1.安装Matplotlib2.引入库及绘图三、Figure的组成四、绘图接口1.OO模式2.pyplot模式五、通用绘图模板总结 前言 主要参考资料 Datawhale开源资料、 Matplotlib用户指南 一、初识Matplotlib Matplotlib是一个Python 2D绘图库,用来绘制各种静态,动态,交互式的图表。 Matplotli 阅读详情

相关推荐

【python】数据可视化——matplotlib

matplotlib是一个强大的Python绘图库,用于创建高质量的静态、动态和交互式图表。它提供了广泛的绘图选项,适用于数据可视化、科学计算、工程绘图等多个领域。

urge的博客 2678

python-Matplotlib绘图库学习笔记

文章目录常用绘图操作中文乱码问题常用图形绘制散点图条形图直方图饼图 学习方式:(点击这里TP) [官网examples入门学习] https://matplotlib.org/examples/index.html https://matplotlib.org/galler.html 安装方式 pip install matplotlib 导入方式 import matplotlib.pyplot as plt 基础操作 plot(x,y,color='red',linestyle='

L_COMH的博客 797

从贝塞尔曲线到FFD变形

贝塞尔曲线的性质到FFD变形 与Hermite曲线通过始末两点和亮点的方向来绘制曲线不同,贝塞尔样条曲线是通过多个关键控制点构成曲线,曲线有如下良好的性质,这些性质决定了FFD最终使用贝塞尔样条曲线而非Hermite曲线。 对于给定关键点的贝塞尔曲线,曲线穿过最开始和最后的关键点 曲线的大致趋势与关键点相契合 曲线在关键点的包围之中,不会伸出到关键点以外现提出两个问题:为什么说这样的性质很契合FFD

雨诺寒雪的博客 2149

marker=‘o‘, linestyle=‘-‘, color=‘b‘ plt.plot画图参数含义

在matplotlib中使用plt.plot()画图时,你提供的参数marker='o', 和color='b'代表了绘制图形的不同属性。

Never Give Up 1361

UE5 中 Python 编程:Python 代码加载到 UE5 中,如何供蓝图节点调用

配置 python 代码的路径,使 UE5 启动时,加载代码文件。重启之后,在蓝图中右键,就能搜索到你定义的方法了。参数为 str 字符串类型,返回值为 向量数组。注意:一定要 重启 UE5。

topcss的专栏 3996

vscode+keil嵌入式软件开发全流程

vscode+keil嵌入式软件开发全流程

AspringQ的博客 6781

Matplotlib用法总结

import numpy as np import pandas as pd import matplotlib.pyplot as plt # 查看style都有什么风格 # Windows电脑Matplotlib 支持中文 plt.rcParams['font.sans-serif'] = ['SiHei'] # 使图形中的中文正常编码显示 plt.rcParams['axes.unicode_minus'] = False # 使坐标轴刻度表签正常显示正负号 # mac电脑正常显示中文 .

qq_32752467的博客 521

别再纠结高边低边了!用TI BQ76952设计两轮车BMS,手把手教你选对架构(附电路图)

本文深度解析基于TI BQ76952芯片的电动两轮车BMS设计策略,涵盖高边/低边驱动选择、四种基础架构的电流路径分析及选型决策矩阵。通过实战案例分享,帮助工程师优化BMS架构,提升系统可靠性和成本效益,特别适合电摩和共享单车应用场景。

weixin_42665255的博客 514

plt.scatter()函数解析(最清晰的解释)

plt.scatter()函数用于生成一个scatter散点图。 matplotlib.pyplot.scatter(x, y, s=20, c='b', marker='o', cmap=None, norm=None, vmin=None, vmax=None, alpha=None, linewidths=None, verts=None, h...

种树最好的时间是10年前,其次是现在!!! 8万+

出现 has been blocked by CORS policy: No ‘Access-Control-Allow-Origin‘ header is present on the 解决方法

Access to XMLHttpRequest at 'http://127.0.0.1:5000/api/data' from origin 'http://10.197.0.79:8080' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

码农研究僧的博客 1万+

团体程序设计天梯赛竞赛题--登顶题【L3-042 污染大亨】

登顶级 3 道题,每道题 30 分,满分为 90 分。

Pretty Boy Fox的博客 1361

Python_plt_marker=‘o’会创建散点图吗?

在Python的matplotlib库中,使用’o’作为标记样式(marker style)确实可以创建类似散点图的效果,但仅仅设置标记样式并不足以定义一个散点图。使用scatter()函数的好处是它提供了更多的配置选项,比如可以单独设置每个点的颜色、大小等,而且它更直观地表达了你的意图,即创建一个散点图。虽然使用plot()函数并设置标记样式为’o’可以产生类似散点图的效果,但使用scatter()函数是创建散点图的更正式和推荐的方式。

- 362

对称式目镜设计实例

对称式目镜设计实例

weixin_72050316的博客 1163

手把手教你用Matplotlib进行数据可视化

导读:Matplotlib是建立在NumPy数组上的一个多平台数据可视化库。在2002年,约翰·亨特(John Hunter)提出Matplotlib,最初的构思是设计为IPython的...

大数据 3992

水声信号处理开源算法库最新进展

欢迎关注本专栏,一起探索新世界大家好,我是ZhuChunSHU。985院校硕士毕业,现担任算法研究员一职,热衷于深度学习算法研究与应用。曾获得阿里云天池比赛第三名,CCE比赛第五名,科大讯飞Q比赛第六名。拥有多项发明专利。对机器学习和深度学习拥有自己独到的见解。曾经辅导过若干个非计算机专业的学生进入到算法行业就业。希望和大家一起成长进步。今天继续我们的专栏分享!!!!!!!!!!!!!!!!!!!!水声信号处理是海洋科学与工程领域的核心组成部分,对于水下通信、目标探测、海洋环境监测以及生物声学研究至关重要。

u012133341的博客 1254

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Matplotlib入门学习:认识数据可视化

【📈数据可视化启航📊】🚀跃入数据世界的奇妙旅程,让🌈Matplotlib🌈为您揭开数据可视化的神秘面纱!📚本文将带您从零开始,一步步探索Matplotlib的魔法世界!🔮助您轻松驾驭数据可视化,让数据说话,故事跃然纸上!🌟无论您是想为报告增色,还是为项目添彩,Matplotlib都是您不可或缺的好帮手!💼✨快来加入我们,一起开启数据可视化的精彩之旅吧!🚀🌈

创作高质量博文,分享知识,共同进步! 4826

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

matplotlib中cmap_手把手教你用Matplotlib进行数据可视化

导读:Matplotlib是建立在NumPy数组上的一个多平台数据可视化库。在2002年,约翰·亨特(John Hunter)提出Matplotlib,最初的构思是设计为IPython的一个补丁,以便能够从命令行启用交互式MATLAB样式绘图。近几年,更新、更炫酷的工具(例如,R语言中的ggplot和ggvis)层出不穷,最终取代了Matplotlib,可是Matplotlib仍然是一个...

weixin_42525264的博客 1874

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

手把手教你学Python之Matplotlib绘图(一文掌握数据可视化库-Matplotlib)

详细介绍Python中数据可视化第三方库Matplotlib的使用,包括绘图基础以及一些经典图的绘制,例如线形图、条形图、直方图、饼状图、散点图以及词云图等。

手把手教你学编程 3975

Matplotlib数据可视化

我们可以使用 pyplot 中的 bar() 方法来绘制柱形图。

Lmx070411的博客 1822

Matplotlib数据可视化从入门到进阶

在数据分析与机器学习中,我们经常要用到大量的可视化操作。一张制作精美的数据图片,可以展示大量的信息,一图顶千言。而在可视化中,Matplotlib算得上是最常用的工具。Matplotlib 是 python 最著名的绘图库,它提供了一整套 API,十分适合绘制图表,或修改图表的一些属性,如字体、标签、范围等。Matplotlib 是一个 Python 的 2D 绘图库,它交互式环境生成出版质量级别的图形。通过 Matplotlib这个标准类库,开发者只需要几行代码就可以实现生成绘图,折线图、散点图、柱状图、

佛系更新 7001

Python数据可视化库Matplotlib

前言 python的数据可视化库,Matplotlib,是一个Python的2D绘图库。通过这个库,开发者可以仅需要几行代码,便可以生成绘图,直方图,功率图,条形图,错误图,散点图等等 一点一点画一张图 首先我们有一组数据如下: 我们可以看到,这组数据有日期,还有日期对应的值,因为这组数据中的日期格式不是标准的日期格式 那么我们对数据做一下转换,取1948年的整年的数据,来进行一个绘图操作 im...

nine_mink的博客 2701

实验十六 matplotlib数据可视化

基于panda的matplotlib数据可视化

qq_52973916的博客 1万+

Matplotlib-数据可视化详解

可视化介绍数据可视化是指直观展现数据,它是数据处理过程的一部分。把数值绘制出来更方便比较。借助数据可视化,能更直观地理解数据,这是直接查看数据表做不到的数据可视化有助于揭示数据中隐藏的模式,数据分析时可以利用这些模式选择模型可视化库介绍基于Matplotlib 绘制静态图形pandasseaborn基于JS (javaScript)plotly状态接口和面向对象导包# 使用Matplotlib需要导入pyplot# Matplotlib.pyplot 包含一系列绘图函数的相关函数。

2201_75415080的博客 2326

Matplotlib(一)- 数据可视化与Matplotlib

本文介绍了数据可视化的基本概念与常用图表类型,并总结了Python中主流可视化工具库的特点。数据可视化通过图形化呈现数据规律与趋势,核心流程包括数据读取、图表选择、绘制与保存。常见图表如折线图、柱形图、散点图等各有适用场景,能直观展示趋势、对比、分布等不同数据特征。

zcs2312852665的博客 1201
上一篇: Spark与Hive数据读取全解析:从底层RDD到高效DataFrame
xiaolin030
博客等级 码龄1年 7粉丝 7原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值