Matplotlib 学习

知识点

1.plot():用于绘制线图和    散点图scatter() 函数:
    plot() 函数可以接受许多可选参数,用于控制图形的外观,例如:
    颜色: color='blue' 控制线条的颜色。
    线型: linestyle='--' 控制线条的样式,例如虚线。
    标记: marker='o' 控制数据点的标记样式。
    标记大小: markersize=5 控制标记的大小。
    标签: label='sin(x)' 给线条添加一个标签,用于图例显示。  2.scatter():用于绘制散点图
        plt.plot(t, s,label='正弦','b--',color='#096')# 绘图     'b--' 指的是绘制一条蓝色的虚线。  -表示实线
        plt.xlabel('x-变量',fontproperties='STKAITI',fontsize=10)
        plt.ylabel('y-正弦余弦函数值',fontproperties='STKAITI',fontsize=10)
        plt.title('sin-cos 函数图像',fontproperties='STKAITI',fontsize=10)
        plt.legend(prop=myfont)  #图例
        plt.xticks(np.arange(0, 11, step=2))  # 设置 x 轴刻度为 0 到 10,步长为 2
        plt.yticks([-1, 0, 1])  # 设置 y 轴刻度为 -1, 0, 1
        
            scatter()
                x, y:数据点的 x 和 y 坐标。
    
                s:散点的大小,可以是一个标量,也可以是一个数组,用来指定每个散点的大小。默认为 20。
                
                c:散点的颜色,可以是单个颜色,也可以是与 x 和 y 具有相同长度的颜色序列。默认为 None,表示使用默认的颜色。
                
                marker:散点的标记样式,如 'o' 表示圆形,'^' 表示三角形,'s' 表示正方形等。默认为 'o'。
                
                cmap:指定颜色映射,仅当 c 是一个浮点数数组时才有用。可以是一个 Colormap 对象或者 Colormap 名称的字符串。默认为 None
3.bar():用于绘制垂直条形图和水平条形图
4.hist():用于绘制直方图 histogram
5.pie():用于绘制饼图    
    ax.pie(np.random.random(4),explode=explode,labels=labels,colors=colors,autopct='%1.1f%%',shadow=True,startangle=90,radius=0.25,center=(0,0))
6.imshow():用于绘制图像
7.subplots():用于创建子图 
    nrows:整数,表示子图网格的行数。
    ncols:整数,表示子图网格的列数。
    index:整数,表示当前激活的子图的位置编号,编号从1开始,从左到右、从上到下递增。


8.plt.figure()   是 Matplotlib 中用于创建新图形的函数。它的作用是创建一个新的图形窗口,以便在其中绘制图表   plt.figure(figsize=(8, 6), facecolor='lightblue')
        # 获取当前图形的当前轴对象
        ax = fig.gca()
        # 在轴对象上进行操作,例如绘制图形
        ax.plot([1, 2, 3, 4], [1, 4, 9, 16])
        ax.set_xlabel(), ax.set_ylabel() 等方法设置轴的标签。
        set_xlim(xmin, xmax) 方法用于设置x轴的最小值和最大值
        ax.set_aspect('equal')      #ax.set_aspect('equal') 确保了坐标轴在水平方向和垂直方向上的比例是相同的,即每个单位长度的像素数量是相等的。

案例:

案例一: 绘制折线图

myfont=fm.FontProperties(fname=r'C:\Windows\Fonts\STKAITI.ttf')  #设置字体
t=np.arange(0,2.0*np.pi,0.01)
s=np.sin(t)
z=np.cos(t)

xpoints = np.array([0, 5])
ypoints = np.array([0, 100])

plt.plot(t, s,label='正弦',color='#096')# 绘图
plt.plot(t,z,label='余弦')

plt.xlabel('x-变量',fontproperties='STKAITI',fontsize=10)
plt.ylabel('y-正弦余弦函数值',fontproperties='STKAITI',fontsize=10)
plt.title('sin-cos 函数图像',fontproperties='STKAITI',fontsize=10)

plt.legend(prop=myfont)  #图例
plt.show()

案例二:绘制散点图

a=np.arange(0,2*np.pi,0.1)
b=np.cos(a)
plt.scatter(a,b)
plt.show()

案例三:绘制星型散点图

x=np.random.random(100)
y=np.random.random(100)

plt.figure()
plt.scatter(x,y,s=x*500,marker='*')
plt.show()

案例四:绘制饼状图

labels='Frogs','Hogs','Dogs','Logs'  #标签,逆时针绘制扇形图
sizes=[15,30,45,10]
colors=['yellowgreen','gold','#FF0000','lightcoral']
explode=(0,0.1,0,0.1)

fig=plt.figure(figsize=(8,9))
ax=fig.gca()     #获取轴域

ax.pie(np.random.random(4),explode=explode,labels=labels,colors=colors,autopct='%1.1f%%',shadow=True,startangle=90,radius=0.25,center=(0,0))
ax.pie(np.random.random(4),explode=explode,labels=labels,colors=colors,autopct='%1.1f%%',shadow=True,startangle=90,radius=0.25,center=(1,1))
ax.pie(np.random.random(4),explode=explode,labels=labels,colors=colors,autopct='%1.1f%%',shadow=True,startangle=90,radius=0.25,center=(0,1))
ax.pie(np.random.random(4),explode=explode,labels=labels,colors=colors,autopct='%1.1f%%',shadow=True,startangle=90,radius=0.25,center=(1,0))

ax.set_xticks([0,1])  #设置显示刻度的位置
ax.set_yticks([0,1])

ax.set_xticklabels(["Sunny","Cloudy"])  #设置刻度上显示的文本
ax.set_yticklabels(["Dry","Rainy"])
ax.set_xlim((-0.5,1.5))
ax.set_ylim((-0.5,1.5))
ax.set_aspect('equal')      #ax.set_aspect('equal') 确保了坐标轴在水平方向和垂直方向上的比例是相同的,即每个单位长度的像素数量是相等的。

plt.show()

案例五:在图例中显示公式

在图例中显示公式
x=np.linspace(0,2*np.pi,500)
y=np.sin(x)
z=np.cos(x*x)
plt.figure(figsize=(8,4))

plt.plot(x,y,label='$sin(x)$',color='red',linewidth=2)    #红色  2像素宽
#$ 将其显示为公式 $
plt.plot(x,z,'b--',label='$cos(x^2)$')                    #蓝色  虚线

plt.xlabel('Time(s)')
plt.ylabel('Volt')

plt.title('sin and cos figure using  pyplot')

plt.ylim(-1.2,1.2)
plt.legend()       #显示图示

plt.show()

案例六:生成子图

x=np.linspace(0,2*np.pi,500)
y1=np.sin(x)
y2=np.cos(x)
y3=np.sin(x*x)
plt.figure(1)
ax1=plt.subplot(2,2,1)
ax2=plt.subplot(2,2,2)
ax3=plt.subplot(212,facecolor='y')

plt.sca(ax1)  #选择ax1
plt.plot(x,y1,color='red')#绘制红色曲线
plt.ylim(-1.2,1.2)

plt.sca(ax2)
plt.plot(x,y2,'b--') #绘制蓝色曲线
plt.ylim(-1.2,1.2)

plt.sca(ax3)
plt.plot(x,y3,'g--')
plt.ylim(-1.2,1.2)

plt.show()

相关推荐

  1. matplotlib学习

    2024-07-12 17:46:02       39 阅读
  2. Matplotlib

    2024-07-12 17:46:02       31 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-12 17:46:02       70 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-12 17:46:02       74 阅读
  3. 在Django里面运行非项目文件

    2024-07-12 17:46:02       62 阅读
  4. Python语言-面向对象

    2024-07-12 17:46:02       72 阅读

热门阅读

  1. 解决 idea git提交后,文件状态不刷新

    2024-07-12 17:46:02       22 阅读
  2. 如何理解李彦宏说的”不要卷模型,要卷应用

    2024-07-12 17:46:02       26 阅读
  3. Vue3学习记录

    2024-07-12 17:46:02       21 阅读
  4. 浏览器Content-Range断点续传MP4文件

    2024-07-12 17:46:02       23 阅读