用 Python 描绘数据之美:绘制各种图形378
Python 因其易用性和 versatility 而成为数据分析和 visualization 的理想选择。使用 matplotlib 和 seaborn 等强大的库,你可以轻松地创建各种图表和图形,展示你的数据洞察。本文将指导你使用 Python 绘制各种图形,从简单的条形图到复杂的散点图和热力图。
1. 直方图
直方图显示给定数据集中的值的分布。要使用 Python 创建直方图,请使用 matplotlib 的 hist() 函数。该函数需要一个数据数组作为参数,并可选择指定 bin 的数量。以下代码演示了如何绘制正态分布数据集的直方图:import as plt
import numpy as np
data = (size=1000) # 生成正态分布数据
(data, bins=50)
('值')
('频率')
('正态分布数据集的直方图')
()
2. 条形图
条形图用于比较不同类别的数据。要使用 Python 创建条形图,请使用 matplotlib 的 bar() 函数。该函数需要一个数据数组作为参数,并可选择指定类别标签。以下代码演示了如何绘制不同水果销售的条形图:import as plt
fruits = ['苹果', '香蕉', '橙子']
sales = [100, 150, 200]
(fruits, sales, color='skyblue')
('水果')
('销售量')
('水果销售条形图')
()
3. 折线图
折线图展示数据随时间或其他变量的变化。要使用 Python 创建折线图,请使用 matplotlib 的 plot() 函数。该函数需要两个数据数组作为参数,一个表示 x 坐标,另一个表示 y 坐标。以下代码演示了如何绘制时间序列数据的折线图:import as plt
time = (0, 10, 0.1)
data = (time)
(time, data, color='red')
('时间')
('正弦值')
('时间序列折线图')
()
4. 散点图
散点图展示两个变量之间的关系。要使用 Python 创建散点图,请使用 matplotlib 的 scatter() 函数。该函数需要两个数据数组作为参数,一个表示 x 坐标,另一个表示 y 坐标。以下代码演示了如何绘制两个数据集之间的散点图:import as plt
x = (size=100)
y = (size=100)
(x, y, color='green')
('x 坐标')
('y 坐标')
('散点图')
()
5. 热力图
heatmap 展示数据中值的分布,通常用于展示矩阵或表格数据。要使用 Python 创建热力图,请使用 seaborn 的 heatmap() 函数。该函数需要一个数据矩阵作为参数,并可选择指定颜色图和注释。以下代码演示了如何绘制numpy数组的热力图:import seaborn as sns
import numpy as np
data = (10, size=(10, 10))
(data, annot=True, cmap='YlGnBu') # YlGnBu 是一个颜色图
('列')
('行')
('热力图')
()
6. 饼图
饼图显示不同类别的数据所占的比例。要使用 Python 创建饼图,请使用 matplotlib 的 pie() 函数。该函数需要一个数据数组作为参数,并可选择指定标签和颜色。以下代码演示了如何绘制不同水果销售的饼图:import as plt
fruits = ['苹果', '香蕉', '橙子']
sales = [100, 150, 200]
(sales, labels=fruits, autopct='%1.1f%%') # autopct 指定百分比格式
('水果销售饼图')
()
7. 雷达图
雷达图展示多维数据,其中每个数据点沿不同轴绘制。要使用 Python 创建雷达图,请使用 matplotlib 的 radar_chart() 函数。该函数需要一个数据矩阵作为参数,并将数据点与中心点连接起来形成一个多边形。以下代码演示了如何绘制三个数据集的雷达图:import as plt
data = [
[0.2, 0.5, 0.7, 1.0, 0.9],
[0.3, 0.8, 0.6, 0.9, 0.7],
[0.4, 0.7, 0.8, 0.6, 0.8],
]
plt.radar_chart(data, labels=['指标 1', '指标 2', '指标 3', '指标 4', '指标 5'])
('雷达图')
()
8. 箱线图
箱线图展示数据分布的统计特征,如中位数、四分位数和异常值。要使用 Python 创建箱线图,请使用 seaborn 的 boxplot() 函数。该函数需要一个数据数组作为参数,并将数据点分为四分位数并绘制箱线。以下代码演示了如何绘制不同类别的数据的箱线图:import seaborn as sns
data = {'类别 1': [10, 15, 20, 25, 30],
'类别 2': [20, 25, 30, 35, 40]}
(data=data)
('箱线图')
()
9. 小提琴图
小提琴图类似于箱线图,但提供了更多有关数据分布的信息。要使用 Python 创建小提琴图,请使用 seaborn 的 violinplot() 函数。该函数需要一个数据数组作为参数,并将数据点绘制为小提琴形状,显示密度估计。以下代码演示了如何绘制不同类别的数据的小提琴图:import seaborn as sns
data = {'类别 1': [10, 15, 20, 25, 30],
'类别 2': [20, 25, 30, 35, 40]}
(data=data)
('小提琴图')
()
10. 簇状条形图
簇状条形图用于比较多组数据的多个类别。要使用 Python 创建簇状条形图,请使用 seaborn 的 clustermap() 函数。该函数需要一个数据矩阵作为参数,并将数据点分组并以簇状方式绘制条形。以下代码演示了如何绘制不同类别的数据的簇状条形图:import seaborn as sns
data = {'类别 1': [10, 15, 20],
'类别 2': [20, 25, 30],
'类别 3': [30, 35, 40]}
(data)
('簇状条形图')
()
11. 热图
热图是另一种展示矩阵数据中值分布的图形。与热力图类似,热图使用颜色来表示值。要使用 Python 创建热图,请使用 matplotlib 的 imshow() 函数。该函数需要一个数据矩阵作为参数,并将值映射到颜色图。以下代码演示了如何绘制numpy数组的热图:import as plt
import numpy as np
data = (10, size=(10, 10))
(data, cmap='hot') # hot 是一个颜色图
()
('热图')
()
12. 树状图
树状图用于可视化分层数据。要使用 Python 创建树状图,请使用 scipy 的 dendrogram() 函数。该函数需要一个距离矩阵作为参数,并将数据点分组并绘制成树状结构。以下代码演示
2025-02-07
![Shell脚本编程技术:自动化任务、提高效率](https://cdn.shapao.cn/images/text.png)
Shell脚本编程技术:自动化任务、提高效率
https://jb123.cn/jiaobenbiancheng/34254.html
![使用 Perl 写入文件](https://cdn.shapao.cn/images/text.png)
使用 Perl 写入文件
https://jb123.cn/perl/34253.html
![Perl在2023年:蓬勃发展还是日落西山?](https://cdn.shapao.cn/images/text.png)
Perl在2023年:蓬勃发展还是日落西山?
https://jb123.cn/perl/34252.html
![编译原理脚本语言](https://cdn.shapao.cn/images/text.png)
编译原理脚本语言
https://jb123.cn/jiaobenyuyan/34251.html
![如何将 JavaScript 数字转换为浮点数](https://cdn.shapao.cn/images/text.png)
如何将 JavaScript 数字转换为浮点数
https://jb123.cn/javascript/34250.html
热门文章
![Python 编程解密:从谜团到清晰](https://cdn.shapao.cn/images/text.png)
Python 编程解密:从谜团到清晰
https://jb123.cn/python/24279.html
![Python编程深圳:初学者入门指南](https://cdn.shapao.cn/images/text.png)
Python编程深圳:初学者入门指南
https://jb123.cn/python/24225.html
![Python 编程终端:让开发者畅所欲为的指令中心](https://cdn.shapao.cn/images/text.png)
Python 编程终端:让开发者畅所欲为的指令中心
https://jb123.cn/python/22225.html
![Python 编程专业指南:踏上编程之路的全面指南](https://cdn.shapao.cn/images/text.png)
Python 编程专业指南:踏上编程之路的全面指南
https://jb123.cn/python/20671.html
![Python 面向对象编程学习宝典,PDF 免费下载](https://cdn.shapao.cn/images/text.png)
Python 面向对象编程学习宝典,PDF 免费下载
https://jb123.cn/python/3929.html