ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Matplotlib_2简易线性图

2021-09-25 20:00:02  阅读:151  来源: 互联网

标签:plot plt Matplotlib 简易 坐标轴 np 线性 ax 绘制


文章目录

绘制曲线

fig = plt.figure() # 创建一个容器,用于容纳坐标轴、图形、文字和标签;
ax = plt.axes() # 创建一个带有刻度和标签的矩形;一个fig只能定义一个ax;
x = np.linspace(0,10,100)
ax.plot(x,np.sin(x))
plt.show()

请添加图片描述

直接通过plt.plot等一系列命令进行操作,就是在默认的容器与坐标轴下进行绘制。

我认为,一种是matlab绘制类,一种是对象绘制类。

同时输出两张图像

fig1 = plt.figure(1)
ax = plt.axes()
x = np.linspace(0,10,100)
ax.plot(x,np.sin(x))

fig2 = plt.figure(2)
ax = plt.axes()
x = np.linspace(0,10,100)
ax.plot(x,np.cos(x))

plt.show()

每一个fig都代表一个容器;创建容器之后的所有命令都是在该容器下执行的。

plt.show()用于展示所有的容器。

绘制子图

请添加图片描述

matplot风格接口

fig = plt.figure()
x = np.linspace(0,10,100)
plt.subplot(2,1,1) # 创建子图1,激活子图1
plt.plot(x,np.sin(x))
plt.subplot(2,1,2) # 创建子图2,激活子图2,关闭子图1
plt.plot(x,np.cos(x))
plt.show()

优点在于方便快捷;缺点在于后续无法方便地对子图改动。
接下来的介绍,也会以matlab风格的为主。

面向对象接口

fig,ax = plt.subplots(2)
x = np.linspace(0,10,100)
ax[0].plot(x,np.sin(x))
ax[1].plot(x,np.cos(x))
plt.show()

调整线条颜色与风格

plt.plot(x,y,color,linestyle,)
参数:
color:'blue','red'...
linestyle:'solid'实线,'dashed'虚线,'dashdot'点划线,'dotted'实点线

调整坐标轴的上下限

方法一:
plt.xlim(1,2)
plt.ylim(1,2)
逆序:
plt.xlim(2,1)
plt.ylim(2,1)

方法二:
plt.axis([xmin,xmax,ymin,ymax])

方法三-按照图形内容自动收紧坐标轴:
plt.axis('tight')

如果设置对象的话,使用get_xlim和get_ylim即可。

设置图形的标签

坐标轴名称:
plt.xlable('x')
plt.ylable('y')

图像名称:
plt.title('curve')

曲线名称:
plt.plot(x,y,label='curve')
plt.legend()

对象绘制与matlab绘制转化

在这里插入图片描述

总结:

  1. plot自带color、linestyle、label;
  2. matlab风格包含了xylim、xylabel、title增加说明;并且以上可以通过set在对象绘制中实现。

绘制散点图

plt.plot(x,y,'o')
其中,o是大圆圈;.是小圆圈;x是十字...
如果包含linestyle的话,会出现曲线,在点位置会有点标注。

标签:plot,plt,Matplotlib,简易,坐标轴,np,线性,ax,绘制
来源: https://blog.csdn.net/weixin_46365033/article/details/120475278

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有