matplotlib学习日记(1)

一、一个简单的matplotlib:

1、导入库:

from matplotlib import pyplot as plt 
#或者import matplotlib.pyplot as plt

2、简单输入x,y:

x=range(2,28,2) #从2到28,公差为2的等差数列,即:2,4,6,...,28
y=[15,13,13,40,23,45,22,23,43,12,32,31,35] #数据在Y轴的位置

3、画图:

plt.plot(x,y) #传入x与y,绘制折线图
plt.show() #输出图形

完整代码:

from matplotlib import pyplot as plt

x=range(2,28,2)
y=[15,13,13,40,23,45,22,23,43,12,32,31,35]

plt.plot(x,y)
plt.show()

但通过这个图,我们可以发现,图上所绘制的图形存在一定的问题:

(1)图片大小与清晰度,(2)描述信息缺失,(3)x与y的刻度不一定符合我们的要求, (4)如果可以的话,我们也可以标注特殊的点。

二、设置图片大小与保存图片:

plt.figure(figsize = (20,8), dpi = 80)
# figsize即图片大小为20*8,dpi即图片清晰度(像素点个数)

plt.savefig("./matplotlib1.png")
# 保存图片,括号内为存储路径

三、添加描述信息:

1、为每条线添加批注:

plt.plot(x, y, label='Y') #通过 label 参数指定该曲线的名称为Y

2、添加标题:

plt.title('一个简单的matplotlib') #添加标题

3、添加x,y轴信息:

plt.xlabel('x') # plt.xlabel 函数用于设置 x 轴的标签
plt.ylabel('y') # plt.ylabel 函数用于设置 y 轴的标签

4、添加图例:

plt.legend()

四、设置坐标轴范围和刻度:

plt.xlim(0, 28)
#设置 x 轴的显示范围,这里设置为从 0 到 28
plt.ylim(0, 50)
#设置 y 轴的显示范围,这里设置为从 0 到 50

1、设置x,y的范围:

2、设置x,y的刻度

plt.xticks(np.arange(2, 29, 2))
#设置 x 轴的刻度位置,这里使用 np.arange 生成从 2 到 29(不包含 29),步长为 2 的数组作为刻度位置
plt.yticks([0,5,10,15,20,25,30,35,40,45,50])
#设置 y 轴的刻度位置,这里用数组直接生成

完整代码:

import numpy as np
from matplotlib import pyplot as plt

plt.figure(figsize = (20,8), dpi = 80)

x=range(2,28,2)
y=[15,13,13,40,23,45,22,23,43,12,32,31,35]

plt.plot(x,y,label = 'Y')
plt.savefig("./matplotlib1.png")
plt.xlabel('x')
plt.ylabel('y')
plt.xlim(0, 28)
#设置 x 轴的显示范围,这里设置为从 0 到 28
plt.ylim(0, 50)
#设置 y 轴的显示范围,这里设置为从 0 到 50
plt.xticks(np.arange(2, 27, 2))
plt.yticks([0,5,10,15,20,25,30,35,40,45,50])
plt.legend()
plt.show()

五、其他的图:

1、散点图:

sizes = 10
plt.scatter(x, y, c='r', s=sizes, alpha=0.5)
#plt.scatter 用于绘制散点图,c 参数指定颜色,s 参数指定点的大小,alpha 参数指定透明度。

2、柱状图:

x = ['A', 'B', 'C', 'D']
y = [20, 35, 30, 25]

plt.bar(x, y)
plt.show()

3、直方图:

data = np.random.randn(1000)
plt.hist(data, bins=30)
plt.show()

4、多子图:

x = np.linspace(0, 10, 100)
y1 = np.sin(x)
y2 = np.cos(x)

# 创建一个 1 行 2 列的子图布局
fig, axes = plt.subplots(1, 2, figsize=(10, 5))

# 在第一个子图中绘制正弦函数
axes[0].plot(x, y1)
axes[0].set_title('Sine Function')

# 在第二个子图中绘制余弦函数
axes[1].plot(x, y2)
axes[1].set_title('Cosine Function')

plt.show()

以上就是常用的matplotlib函数,通过这个,我们可以更直观高效的理清我们所需的不同的图形。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值