文章目录
1.导入Matplotlib库
import matplotlib.pyplot as plt
2.最常用的绘图函数plot
# 语法:plot(横坐标数组1,纵坐标数组1,绘图风格1...)
# 语法解释:plot函数可以通过多组横纵坐标数组和绘图风格同时绘制多条曲线
# 绘图风格包括三个部分:曲线的颜色、曲线的线风格和坐标点的风格。
# 绘图风格用一个字符串表示,也可以省略不写
# 绘图风格的组成:颜色+线风格+坐标点风格
# 常用的颜色字符:b蓝色 g绿色 r红色 y黄色 k黑色 w白色
# 常用的线风格字符:-实线 --破折线 -.点划线 :虚线 ‘’无线条
# 常用的点风格字符:.点标记 ,极小点 o实心圆 v倒三角
x=[1,2,3,4,5]
y=[1,4,9,16,25]
plot(x,y,"r:o")
3.展示绘制完成的图像
# 使用show函数展示程序绘制的图像
# 语法:plt.show()
a=[1,2,3,4,5]
b=[5,4,3,2,1]
plot(a,b)
plt.show()
4.保存绘制的图像
# 使用savefig函数保存程序作出的图像
# 语法:plt.savefig(文件名,dpi=图像质量)
plt.savefig("NewPicture",dpi=600)
5.分割子绘图区域
# 使用sublot函数分割原始绘图区域
# 语法:plt.subplot(行数,列数,当前绘图区编号)
plt.subplot(2,2,4)
a=[1,2,3,4,5]
b=[5,4,3,2,1]
plot(a,b)
6.设置横纵轴的坐标轴名称
# 使用xlabel函数和ylabel函数设置横纵坐标轴的名称
# 语法:plt.xlabel/ylabel(坐标轴名)
plt.xlabel("x")
plt.ylabel("sin(x)")
7.设置图像名称
# 使用title函数设置绘制出的图像的名称
# 语法:plt.title(图像名称)
plt.title("TestPicture")
8.让图像中可以出现中文的设置
# 方法1:使用rcParams设置全局字体
# 常用的字体名字:Simhei(黑体) Kaiti(楷体) Lisu(隶书) STSong(宋体)
import matplotlib
matplotlib.rcParams["font.family"]=字体名字
# 方法2:使用fontproperties属性设置局部字体(推荐方法)
# 该方法是指在需要输出中文的函数中将该属性设置为指定字体
plt=xlabel("中文的横坐标",fontproperties="Simhei")
plt=ylabel("中文的纵坐标",fontproperties="Simhei")
9.向图像指定位置处插入文本
# 使用text函数向图像中指定区域插入文本
# 语法:plt.text(横坐标,纵坐标,文本字符串)
plt.text(30,30,"InsertText")
10.固定图像中横纵坐标的取值范围
# 使用axis函数固定绘制的图像中横纵坐标的取值范围
# 语法:plt.axis([横轴最小值,横轴最大值,纵轴最小值,纵轴最大值])
plt.axis([-2,2,-1,1])
11.为绘制出的图像设置网格线
# 使用grid函数为图像设置网格线
# 语法:plt.grid(True)
plt.grid(True)
12.设置图例
# 使用legend函数为图像设置图例(一般用于在一个图像中画多条曲线)
# 语法:plt.legend(绘制的曲线构成的列表,曲线名称列表,loc=位置)
x=np.arange(10)
y1=x*x
y2=x*2
# 注意:必须要先用变量记录作出的线且变量要以英文逗号结尾,然后再使用legend函数
line1,=plt.plot(x,y1)
line2,=plt.plot(x,y2)
plt.legend([line1,line2],["第一条线","第二条线"],loc="upper right")
13.Matplotlib默认参数设置
备注:这一部分一般的绘图中常常不必使用。
# 使用plt.rcParams设置默认参数
# 使用plt.rcParams["figure.figsize"]设置图像大小
# 语法:plt.rcParams["figure.figsize"]=(长度,宽度)
plt.rcParams["figure.figsize"]=(5,3)
14.绘制散点图
在Matplotlib中,scatter
函数用于绘制散点图。它的基本语法如下:
plt.scatter(x, y, s=None, c=None, marker=None, cmap=None, norm=None, vmin=None, vmax=None, alpha=None, linewidths=None, edgecolors=None, **kwargs)
参数解释如下:
x, y
:数组类型,分别表示散点图的x轴和y轴数据。s
:标量或数组类型,用于指定散点的大小,可以是一个数值或一个与x和y等长的数组。c
:颜色,可以是一个表示颜色的字符串,如’r’表示红色,也可以是一个与x和y等长的数组,用于根据数值大小给每个点指定不同的颜色。marker
:指定散点的形状,如圆圈、正方形、三角形等。cmap
:颜色映射,用于将数值映射为颜色。norm
:颜色标准化对象。vmin, vmax
:cmap的范围,用于控制颜色的显示范围。alpha
:透明度,表示散点的透明度,0表示完全透明,1表示不透明。linewidths
:散点边界线的宽度。edgecolors
:散点边界线的颜色。
除了上述参数外,还可以使用其他参数来控制图形的各个方面,如图形的大小、坐标轴标签等。
以下是一个示例代码,演示如何使用scatter
函数绘制散点图:
import matplotlib.pyplot as plt
import numpy as np
# 生成随机数据
x = np.random.rand(50)
y = np.random.rand(50)
colors = np.random.rand(50)
# 绘制散点图
plt.scatter(x, y, s=100, c=colors, alpha=0.5)
# 设置图形标题和坐标轴标签
plt.title('Scatter Plot')
plt.xlabel('X Axis')
plt.ylabel('Y Axis')
# 显示图形
plt.show()
该代码将生成一个包含50个随机点的散点图,每个点的大小为100,颜色随机,透明度为0.5。