Python Matplotlib 常见图形绘制
参考文档:
1、折线图(Line Plot)
绘制折线图(Line Plot)是一项基础且常用的功能。折线图非常适合展示数据随时间或其他连续变量变化的趋势。使用plt.plot() 函数用于在坐标轴上绘制折线图(Line Plot),它提供了多种参数来自定义图像的外观。常用参数如下,
|
参数 |
描述 |
|
color |
设置线条颜色,可以是颜色名称或十六进制代码。 |
|
linestyle |
设置线条样式,例如 '-', '--', '-.', ':'。 |
|
linewidth |
设置线条宽度,为浮点数值。 |
|
marker |
设置数据点标记的样式,如 'o', 's', '^', '+' 等。 |
|
markersize |
设置标记的大小。 |
|
label |
设置图例标签,用于 plt.legend()。 |
使用代码:
import matplotlib.pyplot as plt
import numpy as np
# 创建数据
x = np.linspace(0, 2 * np.pi, 100)
y1 = np.sin(x)
# 创建画布
plt.figure()
# 绘制一条线(正弦曲线),自定义颜色、线条样式、线条宽度和标记
plt.plot(x, y1, color='blue', linestyle='-', linewidth=2, marker='o', markersize=8, label='sin(x)')
# 添加图例
plt.legend()
# 添加标题和轴标签
plt.title('cjavapy Line Plot')
plt.xlabel('X Axis')
plt.ylabel('Y Axis')
# 使用 plt.draw() 显示画布
plt.draw()
# 显示图表
plt.show()
2、散点图(Scatter Plot)
绘制散点图(Scatter Plot)是一种常用的方法来探索和展示数据集中各个数据点的分布。散点图通常用于比较两个变量之间的关系。使用plt.scatter() 函数用于创建散点图,是数据可视化中常用的一个工具。常用参数如下,
|
参数 |
描述 |
|
x |
散点的 x 坐标。 |
|
y |
散点的 y 坐标。 |
|
s |
散点的大小,可以是单个数值或与数据点数量相等的数组。 |
|
c |
散点的颜色,可以是单个颜色格式的字符串或一系列颜色。 |
|
marker |
标记的样式,默认为 'o'。 |
|
alpha |
散点的透明度,介于 0(完全透明)和 1(完全不透明)之间。 |
|
linewidths |
标记边缘的线宽。 |
|
edgecolors |
标记边缘的颜色。 |
|
label |
用于图例的标签。 |
使用代码:
import matplotlib.pyplot as plt
# 示例数据
x = [5, 7, 8, 7, 2, 17, 2, 9, 4, 11, 12, 9, 6]
y = [99, 86, 87, 88, 100, 86, 103, 87, 94, 78, 77, 85, 86]
sizes = [210, 410, 312, 214, 415, 312, 213, 210, 410, 312, 214, 415, 312]
colors = ['red', 'green', 'blue', 'yellow', 'pink', 'black', 'orange', 'purple', 'beige', 'brown', 'gray', 'cyan', 'magenta']
# 创建散点图
plt.scatter(x, y, s=sizes, c=colors, marker='o', alpha=0.5, linewidths=2, edgecolors='w', label='Data Points')
# 添加图例
plt.legend()
# 添加标题和轴标签
plt.title('cjavapy Scatter Plot')
plt.xlabel('X-axis')
plt.ylabel('Y-axis')
# 使用 plt.draw() 显示画布
plt.draw()
# 显示图表
plt.show()
3、柱状图(Bar Plot)
绘制柱状图(Bar Plot)是一种常见的方式来可视化数据。柱状图适合展示不同类别间的比较。使用plt.bar() 函数是用于创建条形图的常用函数。
常用参数如下,
|
参数 |
描述 |
|
x |
条形的 x 坐标。 |
|
height |
条形的高度。 |
|
width |
条形的宽度,默认值为 0.8。 |
|
bottom |
条形的起始位置 y 坐标,默认为 None。 |
|
align |
条形的对齐方式,'center' 或 'edge',默认为 'center'。 |
|
color |
条形的颜色。 |
|
edgecolor |
条形边缘的颜色。 |
|
linewidth |
条形边缘的线宽。 |
|
tick_label |
用作条形标签的标签序列。 |
|
label |
用于为条形图添加图例的标签。 |
使用代码:
import matplotlib.pyplot as plt
# 示例数据
categories = ['Category A', 'Category B', 'Category C', 'Category D']
values = [10, 15, 7, 12]
# 创建条形图
plt.bar(x=categories, # x 坐标
height=values, # 条形的高度
width=0.6, # 条形的宽度
bottom=0, # 条形的起始位置 y 坐标
align='center', # 条形的对齐方式
color='blue', # 条形的颜色
edgecolor='black', # 条形边缘的颜色
linewidth=1, # 条形边缘的线宽
tick_label=categories, # 条形标签
label='Value') # 图例标签
# 添加 x 轴和 y 轴标签
plt.xlabel('Categories')
plt.ylabel('Values')
# 添加图表标题
plt.title('cjavapy Bar Chart Example')
# 显示图例
plt.legend(loc='upper right', fontsize='small', title='Trigonometric Functions', frameon=True, shadow=True, ncol=1)
# 使用 plt.draw() 显示画布
plt.draw()
# 显示图表
plt.show()
4、饼图(Pie Chart)
饼图(Pie Chart)是一种常用的图表类型,用于显示数据的相对比例。每个扇区的大小表示该类别的比例。饼图非常适合于展示部分与整体之间的关系。使用plt.pie()函数绘制饼图,常用参数如下,
|
参数 |
说明 |
|
x |
数据数组,数组中的每个元素对应饼图的一个扇区。 |
|
labels |
为饼图的每个扇区指定的标签。 |
|
autopct |
用于在扇区内自动添加百分比标签。 例如 '%1.1f%%'会显示带有一位小数的百分比。 |
|
colors |
用于指定扇区的颜色序列,可以是颜色代码或颜色名称的列表。 |
|
startangle |
饼图开始的角度,默认从x轴正方向开始,角度按逆时针方向增加。 |
|
radius |
饼图的半径大小,默认为1。 |
|
counterclock |
是否按逆时针方向排列扇区。默认为True。 |
|
explode |
用于“爆炸”扇区,即将某个或某些扇区从中心点突出显示。用于强调部分数据。 |
|
shadow |
是否给饼图添加阴影效果。默认为False。 |
|
wedgeprops |
定义扇区边缘的属性,如边缘线的宽度、颜色等。 |
使用代码:
5、直方图(Histogram)
绘制直方图(Histogram)是一种常用的方法来可视化数据的分布。直方图通过将数据分组到连续的区间或“桶”中,并计数每个桶中的观测次数来工作。使用plt.hist() 函数绘制制直方图。常用参数如下,
|
参数 |
说明 |
|
x |
需要绘制直方图的数据。 通常是一维数组或序列。 |
|
bins |
指定直方图的bin(箱子)数量或边界。 可以是整数(指定bin数量) 或序列(指定每个bin的边界)。 |
|
range |
指定要显示的数据范围, 形式为(最小值, 最大值)。 |
|
density |
若为True ,则直方图显示的是密度而非计数, 即bin的面积总和等于1。 |
|
histtype |
指定直方图的类型。常见的类型有 'bar'、'barstacked' 、'step'和'stepfilled'。 |
|
align |
指定bin边缘与刻度线的对齐方式。可选值有 'left'、'mid'、'right'。 |
|
orientation |
直方图的方向。默认是 'vertical',可设置为'horizontal' 获得水平直方图。 |
|
color |
指定直方图的颜色。 |
|
label |
用于直方图的标签,适用于图例的显示。 |
使用代码:
浙公网安备 33010602011771号