Python可视化中的Matplotlib绘图(1.画图,网格,子图,画正余弦图,坐标轴界限,画圆,)

1.一张基本的图标包含的元素;

   · x轴和y轴 以及他们的刻度线 、标签、绘图区域

import matplotlib.pyplot as plt   # 导入绘图模块
import numpy as np               #  导入需要生成数据的numpy模块
'''只有一个曲线图'''
nd = np.linspace(0,100,10)
# plot 参数如果只有一个值,那x轴的坐标默认是从0,1,2。。。
plt.plot(nd) # plt.plot(nd,nd**2)
plt.show()

2. 在一张图上画多个曲线

'''包含多个曲线图'''
# 第一种方式:
x = np.arange(0,10,1)
plt.plot(x,x**2)
plt.plot(x,x**3)
plt.plot(x,x**4)
plt.show()

# 第二种方式
x = np.arange(0, 10, 1)
plt.plot(x, x * 2, x, x * 5, x, x * 3)  # 每组x和y之间用逗号隔开就行
plt.show()

'''绘制正弦余弦'''
x = np.arange(-np.pi, np.pi , 0.01)  # numpy里面有自带的π,间隔设置为0.01
plt.plot(x,np.sin(x),x,np.cos(x))  # 在一张图片上绘制正弦和余弦
plt.show()

可以给图片加上网格线       plt.grid()  #添加网格线

3. 在一张图张显示多个子图

''' 一张图片展示多张子图   subplot()
plt 面向对象 (图形就是所谓的对象)
'''
# sub = 子
x = np.arange(-10, 10, 0.1)
plt.figure(figsize=(12, 9))
axes = plt.subplot(1, 3, 1)  # 参数的意思:一行三列的第一个子图图
axes.plot(x, np.sin(x))
axes.grid(color='r',linestyle='--',linewidth=2)  # 设置网格 里面可以设置颜色和网格线的样式以及宽度

axes2 = plt.subplot(1, 3, 2)  # 一行三列的第二个子图
axes2.plot(x, np.cos(x))
axes2.grid(color='g',linestyle='-.',linewidth=2)   # 设置网格 里面可以设置颜色和网格线的样式以及宽度

axes3 = plt.subplot(1, 3, 3)  # 一行三列的第二个子图
axes3.plot(x, np.sin(x))
axes3.grid(color='b',linestyle=':',linewidth=2)  # 设置网格 里面可以设置颜色和网格线的样式以及宽度

plt.show()

4. 设置坐标轴 界限

'''
坐标轴界限
如果axis方法没有任何参数,则返回当前坐标轴的上下限 axis(xmin=,ymax=)
'''
x = np.random.rand(10)
'''里面的参数 [x轴的最小值,x轴的最大值,y轴的最小值,x轴的最大值]'''
plt.axis([-5,15,-5,10])   # 注意有中括号括起来
plt.plot(x)
plt.show()

x = np.linspace(-5,5,100)
plt.plot(x,np.tan(x))
'''设置不显示坐标轴axis('off'),默认是显示坐标轴的参数为axis('tight')'''
plt.axis('off')
plt.show()
不显示轴

 5.  利用Matplotlib 里面的plt.axis('equal')  来画一个圆形

'''利用 plt.axis('equal')来画一个圆'''
x = np.linspace(-np.pi,np.pi,100)
plt.axis('equal')   # 'equal':即让x和y的变化幅度相同
plt.plot(np.sin(x),np.cos(x))
plt.show()

猜你喜欢

转载自blog.csdn.net/wei18791957243/article/details/83795263
今日推荐