matplotlib 笔记:基本用法

1 axis

1.0  对比原始图像

import numpy as np
import matplotlib.pyplot as plt
x=range(5)
y=range(10,20,2)
plt.plot(x,y)

1.1 plt.axis('equal')

x轴和y轴单位长度相同

import numpy as np
import matplotlib.pyplot as plt
plt.axis('equal')
x=range(5)
y=range(10,20,2)
plt.plot(x,y)

 1.2 plt.axis('square')

#将x轴和y轴长度设置相等,即图是正方形

2 plt.legend

开启图例

2.1 在legend处直接设置所有的图例

import numpy as np
import matplotlib.pyplot as plt
x=range(5)
y1=range(10,20,2)
y2=range(5)
plt.plot(x,y1)
plt.plot(x,y2)
plt.legend(['l1','l2'])

 2.2 在各个图绘制的时候设置相应的label

import numpy as np
import matplotlib.pyplot as plt
x=range(5)
y1=range(10,20,2)
y2=range(5)
plt.plot(x,y1,label='l3')
plt.plot(x,y2,label='l4')
plt.legend()

 3 xlabel, ylabel

设置x轴y轴标题

import numpy as np
import matplotlib.pyplot as plt
x=range(5)
y=range(10,20,2)
plt.plot(x,y,label='l3')
plt.xlabel('x axis')
plt.ylabel('y axis')

4 plt.figure

创建一个新的图形(figure)或画布

4.1 主要参数

figsize图形大小,以英寸为单位的元组
dpi图形的分辨率,每英寸点数
facecolor图形的背景颜色
edgecolor图形的边框颜色

4.2 举例

import numpy as np
fig = plt.figure(figsize=(9, 8), 
                 facecolor='grey', 
                 dpi=150)
x=np.linspace(0,10,1000)
y=np.sin(x)**2+np.cos(x)
plt.plot(x,y)

5 fig.suptitle

设置图形对象(figure)的总标题的方法

5.1 主要参数

t要显示的标题文本
x标题的 x 坐标位置,通常是 0.5(居中)
y标题的 y 坐标位置,通常是 0.98(靠近图形顶部)
horizontalalignment/ha标题的水平对齐方式,例如 'center''left''right'
verticalalignment/va标题的垂直对齐方式,例如 'top''center''bottom'
fontsize字体大小

5.2 举例

import numpy as np
fig = plt.figure(figsize=(9, 8), 
                 facecolor='grey', 
                 dpi=150)
x=np.linspace(0,10,1000)
y=np.sin(x)**2+np.cos(x)
fig.suptitle('sup title',
            x=0.3,
            y=0.9,
            ha='center',
            va='top',
            fontsize=20)
plt.title('title for plot')
plt.plot(x,y)

 6 plt.axes

  • 把figure看成一个大的画布;ax(axis)看成是画布中的一块区域
  • 接受一个表示轴位置和尺寸的矩形参数,通常以四个值的元组 (left, bottom, width, height) 形式指定。
    • 表示子图或轴相对于图形的位置和大小

6.1 隐式创建和显示创建

  • 显式创建: 可以通过 plt.axes(rect) 显式创建一个axis子图,其中 rect 是表示axis子图位置和尺寸的矩形参数。
  • 隐式创建: 当通过其他绘图函数(例如 plt.plotplt.scatter)开始绘制时,如果当前没有axis子图,Matplotlib 会隐式地创建一个默认axis子图,并返回相应的轴对象。

6.2 主要参数

[left, bottom, width, height]

axis在图形(figure)中的位置和大小

  • left: 子图或图形对象的左侧边缘相对于图形左边缘的位置。通常以标准化坐标(0 到 1 的范围)表示。
  • bottom: 子图或图形对象的底部边缘相对于图形底部边缘的位置。同样,以标准化坐标表示。
  • width: 子图或图形对象的宽度,以标准化坐标表示。
  • height: 子图或图形对象的高度,以标准化坐标表示。
polar是否设置子图为极坐标图(极坐标轴)
aspect设置子图的纵横比。可以是 'equal'(相等比例)、'auto'(自动适应绘图区域)或数值(例如 0.5

xlabel

ylabel

分别设置子图的 x 轴和 y 轴标签

xlim

ylim

设置子图的 x 轴和 y 轴的显示范围

xticks

yticks

设置子图的 x 轴和 y 轴刻度值

xticklabels

yticklabels

设置子图的 x 轴和 y 轴刻度标签
facecolor子图的背景颜色

6.3 举例

import numpy as np
import pandas as pd
fig = plt.figure(figsize=(9, 8), 
                 facecolor='grey', 
                 dpi=150)
x=np.linspace(0,10,1000)
y=np.sin(x)**2+np.cos(x)

ax1=plt.axes([0,0.25,0.2,0.2],
         #左边界0(左面还剩0.25比例的figure)
         #下边界0.25(下面还剩0.25比例的figure)
         #横宽0.2,纵高0.2
         facecolor='green',
         #axis的背景颜色为绿色
         xlabel='x',
         #x轴的标签
         ylim=[-2,3],
         #y轴的范围
         xticks=range(0,8,3),
         #x轴刻度值
         yticklabels=pd.date_range('20230810',periods=6,freq='H'),
         #y轴刻度标签
            )


ax1.plot(x,y)
ax2=plt.axes([0.5,0.5,0.4,0.4],
         facecolor='red',
            polar=True#设置为极坐标
        )
ax2.plot(x,-y)

 

7 plt 坐标轴相关

  • plt.xlabel、plt.ylabel——设置x轴y轴标签
  • plt.xlim、plt.ylim——设置x轴y轴显示范围
    • plt.xlim+plt.ylim可以用plt.axis([xmin, xmax, ymin, ymax])一个代替

matplotlib 知识点整理:ax与figure_matplotlib a_UQI-LIUWJ的博客-CSDN博客

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

UQI-LIUWJ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值