目录
一、概念
1.1基本曲线
1.2自定义图形
1.3折线图
1.4条形图
1.5散点图
基础散点图
自定义散点图
1.6直方图
基础直方图
累积直方图
归一化直方图
1.7热力图
基础热力图
关联热力图
1.8柱状图
1.9雷达图
编辑
1.10网格线
编辑
二、Matplotlib画图的外观参数讲解
2.1符号系统
2.2具体功能
三、其他
3.1子图和布局
3.2坐标轴标签和标题
3.3图像保存
3.4颜色映射
3.5文字和注释
3.6绘图样式
3.7线性回归
3.8其他
作者的话
一、概念
Matplotlib是一个用于绘制2D图形的Python库,它提供了各种绘图工具和函数,可以用于创建折线图、散点图、条形图、直方图、3D图形等。
1.1基本曲线
import matplotlib.pyplot as plt
import numpy as np
# 创建数据
x = np.linspace(0, 10, 100)
y = np.sin(x)
# 创建一个Figure和Axes对象
fig, ax = plt.subplots()
# 绘制曲线
ax.plot(x, y)
# 显示图形
plt.show()
在上面的代码中,我们首先使用numpy库创建了一些数据,然后创建了一个Figure和Axes对象。接着,我们使用plot函数绘制了一条曲线,并使用show函数显示了图形。
1.2自定义图形
Matplotlib提供了许多方法来自定义图形,可以修改线条的样式、标记的类型、坐标轴的范围、标题和标签等等。
import matplotlib.pyplot as plt
import numpy as np
# 创建数据
x = np.linspace(0, 10, 100)
y = np.sin(x)
# 创建一个Figure和Axes对象
fig, ax = plt.subplots()
# 绘制曲线
ax.plot(x, y, linestyle='--', color='r', label='sin(x)')
# 设置坐标轴范围和标签
ax.set_xlim(0, 10)
ax.set_ylim(-1.5, 1.5)
ax.set_xlabel('x')
ax.set_ylabel('y')
# 添加标题和图例
ax.set_title('Sin(x) Curve')
ax.legend()
# 显示图形
plt.show()
在上面的代码中,我们首先使用numpy库创建了一些数据,然后创建了一个Figure和Axes对象。接着,我们使用plot函数绘制了一条曲线,并使用set方法设置了坐标轴的范围和标签,以及添加了标题和图例。最后,我们使用show函数显示了图形
import matplotlib.pyplot as plt
import numpy as np
from matplotlib.pyplot import MultipleLocator
#加入%会使图形以图片的形式存在,可以显示各点的坐标,可用下载,而且不使用show也会展示图片
%matplotlib notebook
#定义图上说明
plt.title("epochs—loss",fontsize = 20)
plt.xlabel('epochs',fontsize = 14)
plt.ylabel('loss',fontsize = 14)
#定义坐标轴的刻度单位
x_major_locator = MultipleLocator(2)
y_major_locator = MultipleLocator(0.1)
#两条坐标轴的实例
ax = plt.gca()
#y轴反向,这一步需要写在刻度的上方
ax.invert_yaxis()
#设置坐标轴刻度
ax.xaxis.set_major_locator(x_major_locator)
ax.yaxis.set_major_locator(y_major_locator)
#设置坐标轴范围
plt.xlim(1,50)
plt.ylim(0,1.5)
val_loss=1
val_acc=2
#定义显示的曲线两条
plt.plot(val_loss,'.-b',label="val_loss")
plt.plot(val_acc,'.-r',label="val_acc")
plt.legend()
自定义坐标轴以及刻度
1.3折线图
在matplotlib中我们可以在同一张图中绘制多条折线图,只需要在plot函数中传入多组x和y数据即可。例如,下面的代码演示了如何在同一张图中绘制两条折线图:
import matplotlib.pyplot as plt
import numpy as np
# 创建数据
x = np.linspace(0, 10, 100)
y1 = np.sin(x)
y2 = np.cos(x)
# 创建一个Figure和Axes对象
fig, ax = plt.subplots()
# 绘制两条折线图
ax.plot(x, y1, color='blue', linewidth=2, label='sin(x)')
ax.plot(x, y2, color='red', linewidth=2, label='cos(x)')
# 设置标题和标签
ax.set_title('Sin(x) and Cos(x) Curves')
ax.set_xlabel('x')
ax.set_ylabel('y')
# 添加图例
ax.legend()
# 显示图形
plt.show()
np.linspace是NumPy中的一个函数,用于在指定的间隔内返回均匀间隔的数字。
np.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None)的函数原型中有以下参数:
start:序列的起始值。
stop:序列的终止值。
num:生成的样本数。默认为50。
endpoint:序列中是否包含stop值。默认为True。
retstep:如果为True,则返回样本之间的间距。
dtype:输出数组的数据类型。如果未给出,则根据其他输入参数推断数据类型。
np.linspace函数返回一个一维数组,包含在指定的区间内均匀分布的数字。在上面的代码中,我们使用了两组x和y数据,分别表示sin(x)和cos(x)的曲线。我们在plot函数中传入两组数据,分别设置不同的颜色和标签,并使用legend函数添加了图例。
1.4条形图
在下面的代码中,我们首先使用列表创建了一些数据,然后创建了一个Figure和Axes对象。接着,我们使用bar函数绘制了一张条形图,并使用set方法设置了标题和标签。最后,我们使用show函数显示了图形。
import matplotlib.pyplot as plt
import numpy as np
# 创建数据
labels = ['A', 'B', 'C', 'D', 'E']
values = [10, 15, 20, 25, 30]
# 创建一个Figure和Axes对象
fig, ax = plt.subplots()
# 绘制条形图
ax.bar(labels, values, color='blue')
# 设置标题和标签
ax.set_title('Bar Chart')
ax.set_xlabel('Labels')
ax.set_ylabel('Values')
# 显示图形
plt.show()
如果我们想将条形图水平显示,只需将bar函数改为barh函数即可,如下所示:
import matplotlib.pyplot as plt
import numpy as np
# 创建数据
labels = ['A', 'B', 'C', 'D', 'E']
values = [10, 15, 20, 25, 30]
# 创建一个Figure和Axes对象
fig, ax = plt.subplots()
# 绘制水平条形图
ax.barh(labels, values, color='blue')
# 设置标题和标签
ax.set_title('Horizontal Bar Chart')
ax.set_xlabel('Values')
ax.set_ylabel('Labels')
# 显示图形
plt.show()
1.5散点图
基础散点图
import matplotlib.pyplot as plt
import numpy as np
# 创建数据
x = np.random.randn(50)
y = np.random.randn(50)
# 创建一个Figure和Axes对象
fig, ax = plt.subplots()
# 绘制散点图
ax.scatter(x, y)
# 设置标题和标签
ax.set_title('Scatter Plot')
ax.set_xlabel('X')
ax.set_ylabel('Y')
# 显示图形
plt.show()
在上面的代码中,我们首先使用NumPy生成了一些随机数据,然后创建了一个Figure和Axes对象。接着,我们使用scatter函数绘制了一张散点图,并使用set方法设置了标题和标签。最后,我们使用show函数显示了图形。
自定义散点图
import matplotlib.pyplot as plt
import numpy as np
# 创建数据
x1 = np.random.randn(50)
y1 = np.random.randn(50)
x2 = np.random.randn(50)
y2 = np.random.randn(50)
# 创建一个Figure和Axes对象
fig, ax = plt.subplots()
# 绘制散点图
ax.scatter(x1, y1, c='blue', marker='o', label='Group 1')
ax.scatter(x2, y2, c='red', marker='s', label='Group 2')
# 设置标题和标签
ax.set_title('Scatter Plot with Different Markers and Colors')
ax.set_xlabel('X')
ax.set_ylabel('Y')
ax.legend()
# 显示图形
plt.show()
在上面的代码中,我们使用不同的颜色和标记样式来区分两组数据点,并使用legend函数添加图例
1.6直方图
基础直方图
直方图是一种展示连续数据分布的图形,它可以将一组连续的数据划分为若干个区间(称为“bin”),并显示每个区间中数据点的数量或占比。在Python中,我们可以使用Matplotlib库来绘制直方图。
import numpy as np
import matplotlib.pyplot as plt
# 生成随机数据
data = np.random.randn(1000)
# 绘制直方图
plt.hist(data, bins=30, alpha=0.5)
# 设置标题和标签
plt.title('Histogram of Random Data')
plt.xlabel('Value')
plt.ylabel('Frequency')
# 显示图形
plt.show()
在上面的代码中,我们首先使用numpy库生成了一个包含1000个随机数的数据集。然后,我们使用hist函数绘制了这组数据的直方图,bins参数表示数据分成的区间数量,alpha参数表示直方图的透明度。除此之外,我们还使用了title、xlabel和ylabel函数来设置标题和标签。最后,我们使用show函数显示了图形。
累积直方图
累积直方图是一种显示数据分布累积情况的直方图,它可以用于显示一组数据在不同区间内的累积数量或占比。
import numpy as np
import matplotlib.pyplot as plt
# 生成随机数据
data = np.random.randn(1000)
# 绘制累积直方图
n, bins, patches = plt.hist(data, bins=30, cumulative=True, density=True, histtype='step', alpha=0.5)
# 设置标题和标签
plt.title('Cumulative Histogram of Random Data')
plt.xlabel('Value')
plt.ylabel('Frequency')
# 显示图形
plt.show()
在上面的代码中,我们首先使用numpy库生成了一个包含1000个随机数的数据集。然后,我们使用hist函数绘制了这组数据的累积直方图,cumulative参数表示绘制累积直方图,density参数表示绘制归一化的累积直方图,histtype参数表示绘制为阶梯状的线条。除此之外,我们还使用了title、xlabel和ylabel函数来设置标题和标签。
归一化直方图
归一化直方图是一种显示数据分布比例的直方图,它可以用于显示一组数据在不同区间内的占比
import numpy as np
import matplotlib.pyplot as plt
# 生成随机数据
data = np.random.randn(1000)
# 绘制归一化直方图
n, bins, patches = plt.hist(data, bins=30, density=True, alpha=0.5)
# 设置标题和标签
plt.title('Normalized Histogram of Random Data')
plt.xlabel('Value')
plt.ylabel('Frequency')
# 显示图形
plt.show()
在上面的代码中,我们首先使用numpy库生成了一个包含1000个随机数的数据集。然后,我们使用hist函数绘制了这组数据的归一化直方图,density参数表示绘制归一化直方图,alpha参数表示直方图的透明度。除此之外,我们还使用了title、xlabel和ylabel函数来设置标题和标签。
1.7热力图
基础热力图
热力图可以帮助我们可视化矩阵或表格中每个单元格的数值。
import numpy as np
import matplotlib.pyplot as plt
# 生成一个矩阵
data = np.random.rand(10, 10)
# 绘制热力图
fig, ax = plt.subplots()
im = ax.imshow(data, cmap='viridis')
# 显示颜色条
cbar = ax.figure.colorbar(im, ax=ax)
# 设置刻度标签
ax.set_xticks(np.arange(data.shape[1]))
ax.set_yticks(np.arange(data.shape[0]))
ax.set_xticklabels(['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J'])
ax.set_yticklabels(['1', '2', '3', '4', '5', '6', '7', '8', '9', '10'])
# 设置轴标签
ax.set_xlabel('X Label')
ax.set_ylabel('Y Label')
# 设置标题
ax.set_title('Heatmap Example')
# 调整热力图外观
plt.setp(ax.get_xticklabels(), rotation=45, ha="right", rotation_mode="anchor")
# 调整热力图大小
fig.tight_layout()
# 显示图形
plt.show()
我们首先使用numpy库生成一个10x10的随机矩阵。然后,我们使用imshow函数绘制了这个矩阵的热力图,cmap参数设置了颜色映射,这里使用了viridis颜色映射。除此之外,我们还使用了colorbar函数显示颜色条。最后,我们使用show函数显示了图形。
除此之外
我们还使用imshow函数和colorbar函数绘制了热力图和颜色条,使用set_xticks、set_yticks、set_xticklabels和set_yticklabels函数设置了刻度标签,使用set_xlabel、set_ylabel和set_title函数设置了轴标签和标题。此外,我们还使用了setp函数调整了刻度标签的旋转角度,使用tight_layout函数调整了热力图的大小和外观
关联热力图
f = open("D:\桌面\关联.csv")
data=pd.read_csv(f)
print(data)
#导入相关库
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
#皮尔森相关系数
pearson=data.corr(method="pearson")
print(pearson)
data.corr(method="pearson")
#绘制热力图
sns.heatmap(pearson)
plt.show()
1.8柱状图
柱状图可以帮助我们可视化类别变量的频率或数量
在下面的代码中,我们首先定义了两个列表categories和values,分别表示类别和类别对应的数量。然后,我们使用bar函数绘制了柱状图,categories参数表示类别列表,values参数表示数量列表。除此之外,我们还使用了title函数设置了标题,使用xlabel和ylabel函数设置了轴标签。最后,我们使用show函数显示了图形。
import matplotlib.pyplot as plt
# 定义数据
categories = ['A', 'B', 'C', 'D', 'E']
values = [23, 35, 12, 47, 19]
# 绘制柱状图
fig, ax = plt.subplots()
ax.bar(categories, values, color=['red', 'green', 'blue', 'yellow', 'purple'], width=0.5, edgecolor='black', linewidth=1)
# 设置标题和轴标签
ax.set_title('Bar Chart Example')
ax.set_xlabel('Category')
ax.set_ylabel('Value')
# 设置刻度标签
ax.set_xticks(range(len(categories)))
ax.set_xticklabels(categories)
# 调整柱状图大小
fig.tight_layout()
# 显示图形
plt.show()
我们想要调整柱状图的颜色、宽度、间距等外观参数,可以使用Matplotlib的其他API和可定制化选项。比如,我们可以使用color参数设置柱状图的颜色,使用width参数设置柱状图的宽度,使用edgecolor和linewidth参数设置柱状图的边缘颜色和边缘宽度,使用xticks和yticks函数设置刻度标签,使用tight_layout函数调整柱状图的大小和外观等
在这个例子中,我们使用了subplots函数创建了一个图表和一个子图。然后,我们使用bar函数绘制了柱状图,color参数表示柱状图的颜色,width参数表示柱状图的宽度,edgecolor和linewidth参数表示柱状图的边缘颜色和边缘宽度。此外,我们还使用了set_xticks和set_xticklabels函数设置了刻度标签,使用tight_layout函数调整了柱状图的大小和外观。
1.9雷达图
雷达图,又称为极坐标图。雷达图通常用于展示多个变量的相对大小或比较,它的主要特点是将数据点放置在同一个圆周上,并使用多个半径不同的多边形来表示不同的变量。
import matplotlib.pyplot as plt
import numpy as np
# 生成随机数据
variables = ['A', 'B', 'C', 'D', 'E']
data = np.random.rand(5) * 10
data = np.append(data, data[0])
# 设置极坐标系
plt.axes(polar=True)
# 绘制雷达图
angles = np.linspace(0, 2 * np.pi, len(variables) + 1)
plt.plot(angles, data, 'o-', linewidth=2)
plt.fill(angles, data, alpha=0.25)
# 设置刻度标签
plt.thetagrids(np.degrees(angles), labels=variables)
# 设置图形标题
plt.title('Radar Chart')
# 显示图形
plt.show()
在上面的代码中,我们首先生成了5个随机数作为5个变量的值。然后将这些数据值组成一个环形数组,使得最后一个数据点和第一个数据点相连,以绘制出完整的雷达图。接着使用axes()函数设置极坐标系,并在其中绘制雷达图,plot()函数用于绘制多边形边界,fill()函数用于填充多边形区域。最后使用thetagrids()函数设置刻度标签,将角度转换为度数并传入变量名称,同时使用title()函数设置图形标题,再使用show()函数显示图形。
除了这些基本用法外,Matplotlib的polar()函数还支持许多其他的参数设置,例如调整网格线、标签位置、标签字体、标签颜色、数据点样式等等。更详细的用法可以参考Matplotlib官方文档。
1.10网格线
Matplotlib支持在图形中绘制网格线,可以通过设置grid()函数的参数来实现。该函数默认绘制水平和垂直方向的网格线,网格线的颜色、样式、宽度等可以通过参数进行控制。
import matplotlib.pyplot as plt
import numpy as np
# 生成随机数据
x = np.linspace(0, 10, 100)
y = np.sin(x)
# 绘制曲线图
plt.plot(x, y, label='sin(x)')
# 设置网格线
plt.grid(color='gray', linestyle='--', linewidth=0.5)
# 设置图例
plt.legend()
# 显示图形
plt.show()
在上面的例子中,我们首先生成了一个正弦曲线的数据。然后使用plot()函数绘制曲线图,grid()函数用于设置网格线的颜色、样式、宽度等参数。最后使用legend()函数设置图例,使用show()函数显示图形。
1.11饼图
import matplotlib.pyplot as plt
# 创建数据
labels = ['A', 'B', 'C', 'D']
sizes = [15, 30, 45, 10]
# 创建饼图
plt.pie(sizes, labels=labels, autopct='%1.1f%%')
# 添加标题
plt.title('Pie Chart')
# 显示图形
plt.show()
在这个示例中,pie()函数用于创建饼图。函数的第一个参数是数据,这里使用sizes变量表示饼图各个部分的大小。labels变量表示饼图各个部分的标签。autopct参数用于设置饼图各个部分的百分比,这里使用'%1.1f%%'表示精确到小数点后一位的百分比。
接下来,使用title()函数为饼图添加标题,将其设置为"Pie Chart"。最后,使用show()函数显示图形。
Matplotlib提供了很多其他的饼图定制化选项,例如可以调整颜色、饼图的大小和旋转角度等。通过调整这些参数,可以创建出各种不同样式的饼图,以满足不同的需求。
1.12三维图
from mpl_toolkits import mplot3d
import numpy as np
import matplotlib.pyplot as plt
# 创建一个三维图形
fig = plt.figure()
ax = plt.axes(projection='3d')
# 创建数据
z = np.linspace(0, 1, 100)
x = z * np.sin(25 * z)
y = z * np.cos(25 * z)
# 绘制三维图形
ax.plot3D(x, y, z, 'red')
# 添加标题和轴标签
ax.set_title('3D Line Plot')
ax.set_xlabel('X Label')
ax.set_ylabel('Y Label')
ax.set_zlabel('Z Label')
# 显示图形
plt.show()
在这个示例中,使用mpl_toolkits中的mplot3d库创建了一个三维图形。首先,创建了一个名为fig的Figure对象,然后使用plt.axes()函数创建一个三维坐标轴对象ax。然后,使用np.linspace()函数生成z轴数据,使用np.sin()和np.cos()函数生成x和y轴数据。最后,使用ax.plot3D()函数将这些数据绘制成红色的三维线图。
接下来,使用ax.set_title()、ax.set_xlabel()、ax.set_ylabel()和ax.set_zlabel()函数为三维图形添加标题和轴标签。最后,使用plt.show()函数显示图形。
Matplotlib提供了许多其他的三维图形选项,例如绘制三维散点图、曲面图和等高线图等,以满足不同的需求。通过调整这些参数,可以创建出各种不同样式的三维图形。
二、Matplotlib画图的外观参数讲解
2.1符号系统
颜色参数:'color'或'c'
线条样式参数:'linestyle'或'ls'
标记参数:'marker'
字体参数:'fontfamily'、'fontsize'、'fontweight'、'fontstyle'等
轴标签和刻度标签参数:'xlabel'、'ylabel'、'xticks'、'yticks'等
图例参数:'legend'、'title'、'loc'等
大小和比例参数:'figsize'、'dpi'、'aspect'等
其他参数:'facecolor'、'edgecolor'、'alpha'、'grid'、'fill_between'等
这些参数可以在Matplotlib的各种函数中使用,例如plot、scatter、bar、histogram等,以控制图形的各种外观属性
2.2具体功能
Matplotlib作为Python中最流行的数据可视化工具之一,提供了大量的外观参数,使得用户可以轻松地调整图形的颜色、字体、线条样式、轴标签、刻度标签、图例等等。下面介绍一些常见的外观参数:
颜色参数:Matplotlib支持各种颜色的设置,包括命名颜色(如'red'、'green'等)、HTML颜色代码(如'#FF0000'、'#00FF00'等)和RGB或RGBA颜色(如(1, 0, 0)、(0, 1, 0, 0.5)等)。
线条样式参数:Matplotlib支持各种线条样式的设置,包括实线('-')、虚线('--')、点线(':')、点划线('-.')等。
标记参数:Matplotlib支持在数据点上添加标记,以增强图形的可读性。常用的标记包括圆圈('o')、方块('s')、三角形('^')、十字('+')等。
字体参数:Matplotlib支持设置各种字体属性,包括字体名称、字体大小、字体粗细、字体颜色等。
轴标签和刻度标签参数:Matplotlib支持设置轴标签和刻度标签的字体、颜色、大小等属性,以及调整标签的位置、角度等。
图例参数:Matplotlib支持在图形中添加图例,以说明每个曲线或图形的含义。常用的图例参数包括标题、字体、位置、阴影、边框等。
大小和比例参数:Matplotlib支持设置图形的大小和比例,包括图形的宽度、高度、dpi值、图形缩放比例等。
其他参数:Matplotlib还支持其他各种参数,包括背景颜色、网格线、边框、渐变填充等等。
在使用Matplotlib时,用户可以通过设置这些外观参数,轻松地定制自己的图形,使其更具有美观性、可读性和可解释性。当然,也可以根据实际需求自定义更多的外观参数,以满足特定的可视化需求。
三、其他
3.1子图和布局
Matplotlib中可以通过子图的方式在一个大的画布上绘制多个小图。使用subplot()函数可以设置子图的行列数量和当前子图的位置。例如,subplot(2, 2, 1)表示将画布分为2行2列,并选择第1个子图进行绘制。
另外,Matplotlib还支持使用subplot2grid()、gridspec等函数设置复杂的子图布局。更详细的用法可以参考官方文档。
3.2坐标轴标签和标题
在Matplotlib中可以使用xlabel()和ylabel()函数设置坐标轴的标签,使用title()函数设置图表的标题。
例如,xlabel('x轴标签')、ylabel('y轴标签')、title('图表标题')。
3.3图像保存
Matplotlib支持将图表保存为图片文件,可以使用savefig()函数实现。该函数可以指定保存的文件名、文件格式、分辨率等参数。
Matplotlib中的图像导出函数可以将绘制的图表导出为各种格式的图像文件,例如PNG、PDF、SVG等。可以使用plt.savefig函数进行导出。
例如,savefig('example.png', dpi=300)表示将图表保存为example.png文件,分辨率为300dpi。
3.4颜色映射
Matplotlib支持使用颜色映射(colormap)将数值映射为颜色。常用的颜色映射函数包括viridis、plasma、magma、inferno等。使用colormap()函数可以设置颜色映射。
例如,colormap('viridis')表示使用viridis颜色映射。
3.5文字和注释
Matplotlib中可以使用text()函数在图表中添加文本,使用annotate()函数在图表中添加注释。这些函数可以设置文本内容、位置、字体、颜色等参数。
例如,text(1, 2, '文本内容')表示在坐标轴上(1, 2)的位置添加文本内容。annotate('注释内容', xy=(1, 2), xytext=(3, 4), arrowprops=dict(facecolor='red', shrink=0.05))表示在坐标轴上(1, 2)的位置添加注释内容,并使用红色箭头指向坐标轴上(3, 4)的位置。
3.6绘图样式
Matplotlib中的绘图样式(style)可以快速地改变绘图的外观。可以使用plt.style函数设置绘图样式,例如plt.style.use('ggplot')表示使用ggplot样式。
例如,plt.plot(x, y, linestyle='--', linewidth=2)表示绘制折线图,其中linestyle='--'表示使用虚线样式,linewidth=2表示线宽为2
3.7线性回归
Matplotlib中可以使用numpy和matplotlib的函数进行线性回归,例如numpy.polyfit()函数计算最小二乘法拟合直线,matplotlib.lines.Line2D类可以绘制拟合直线。
例如,a, b = np.polyfit(x, y, 1)表示使用最小二乘法拟合x和y之间的线性关系,plt.plot(x, a*x+b)表示绘制拟合直线。
3.8其他
此外Matplotlib中还支持3D绘图,动漫,交互式绘图等功能
作者的话
美国大学生数学建模竞赛(MCM/ICM)中常用的图表类型都可以使用Matplotlib库进行创建。以下是一些常用的图表类型以及它们在Matplotlib中的实现方法:
散点图:使用plt.scatter()函数创建,可以用来展示变量之间的关系或者数据的分布情况。
折线图:使用plt.plot()函数创建,可以用来展示时间序列或者连续性数据的趋势。
条形图:使用plt.bar()或者plt.barh()函数创建,可以用来展示分类数据之间的差异或者大小关系。
直方图:使用plt.hist()函数创建,可以用来展示数值数据的分布情况。
箱线图:使用plt.boxplot()函数创建,可以用来展示数值数据的中位数、四分位数和异常值等信息。
饼图:使用plt.pie()函数创建,可以用来展示分类数据之间的比例关系。
热力图:使用plt.imshow()函数创建,可以用来展示数据的热度分布情况。
三维图:使用mpl_toolkits.mplot3d库创建,可以用来展示三维数据的关系。
以上只是一些常见的图表类型,在Matplotlib中还有很多其他类型的图表,可以根据需要进行选择。无论是哪种类型的图表,Matplotlib都提供了灵活的参数控制和定制化选项,能够满足各种不同的需求。