matplotlib.pyplot基本用法

这篇博客介绍了matplotlib.pyplot的基本用法,包括画函数图像、Figure的使用、坐标轴操作、图例标注、散点图、柱状图、等高线图、3D图像绘制、在同一figure中分区画图、subplot的多种布局方式、图中图以及动态图的创建。内容全面,适合初学者掌握matplotlib.pyplot的各种绘图技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

用matplotlib.pyplot法

基本用法

画简单的函数图像:

import matplotlib.pyplot as plt
import numpy as np 
x=np.linspace(-1,1,50)
y=2*x**2+1
plt.plot(x,y)
plt.show()

图像效果:

Figure的使用:

figure就是不同的图片窗口,一个figure管它下面的一段代码

import matplotlib.pyplot as plt
import numpy as np 

x=np.linspace(-3,3,50)
y1=2*x**2+1
y2=x**3-1

plt.figure()   # 先定开头,后面的内容都是和这个figure有关
plt.plot(x,y1)

plt.figure(num=3,figsize=(8,5))  
# 第二个figure,就是第二个图片窗口,可以通过num=设置编号数字,size设置长宽大小
plt.plot(x,y2)
plt.plot(x,y1,color='red',linewidth=2.0,linestyle='--')  # 一个figure可以同时把两个函数画进来,且可以设置颜色粗细样式

plt.show()

图片效果:

坐标轴操作

坐标轴设置1:

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(-3, 3, 100)
y1 = 2 * x ** 2 + 1
y2 = x ** 3 - 1

plt.figure(num=3, figsize=(8, 5))
plt.plot(x, y2)
plt.plot(
    x, y1, color="red", linewidth=2.0, linestyle="--"
)  # 一个figure可以同时把两个函数画进来,且可以设置颜色粗细样式

plt.xlim((-3, 4))  # x轴显示数据范围
plt.ylim((-3, 5))  # y轴显示数据范围

plt.xlabel("I am X")  # x轴名称
plt.ylabel("I am Y")  # y轴名称

# 坐标轴标尺转换
new_ticks = np.linspace(-1, 2, 5)  # 从-1到2,平均取5个刻度[-1.   -0.25  0.5   1.25  2.  ]
plt.xticks(new_ticks)

plt.yticks(
    [-3, -2, 0, 0.3, 1],
    ["bad", "normal", r"$good\ \alpha$", r"$well\ done$", "excellent"],
)
# 对应替代数字标尺,并且会扩大显示范围
# 正则写法--变斜体好看一点,反斜杠转译,直接写空格无法识别,alpha可转译,

plt.show()

 图片效果:

坐标轴(图片框架)操作:

# gca='get current axis'
ax=plt.gca()
# 把坐标轴(脊梁)拿出来
ax.spines['right'].set_color(None)
ax.spines['top'].set_color(None)

效果:(top和right框架被none了)

还可以移动x和y轴:

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(-3, 3, 100)
y1 = 2 * x ** 2 + 1
y2 = x ** 3 - 1

plt.figure(num=3, figsize=(8, 5))
plt.plot(x, y2)
plt.plot(
    x, y1, color="red", linewidth=2.0, linestyle="--"
)  # 一个figure可以同时把两个函数画进来,且可以设置颜色粗细样式

plt.xlim((-3, 4))  # x轴显示数据范围
plt.ylim((-3, 5))  # y轴显示数据范围

plt.xlabel("I am X")  # x轴名称
plt.ylabel("I am Y")  # y轴名称

# 坐标轴标尺转换
new_ticks = np.linspace(-1, 2, 5)  # 从-1到2,平均取5个刻度[-1.   -0.25  0.5   1.25  2.  ]
plt.xticks(new_ticks)

plt.yticks(
    [-3, -2, 0, 0.3, 1],
    ["bad", "normal", r"$good\ \alpha$", r"$well\ done$", "excellent"],
)
# 对应替代数字标尺,并且会扩大显示范围
# 正则写法--变斜体好看一点,反斜杠转译,直接写空格无法识别,alpha可转译,

# gca='get current axis'
ax=plt.gca()
# 把坐标轴(脊梁)拿出来
ax.spines['right'].set_color(None)
ax.spines['top'].set_color(None)
ax.xaxis.set_ticks_position('bottom') # 让bottom轴可以动起来,把x轴设置成bottom轴了
ax.yaxis.set_ticks_posit
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值