python绘图
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python绘图,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含5409字,纯文字阅读大概需要8分钟。
内容图文
![python绘图](/upload/InfoBanner/zyjiaocheng/738/a5e87bf5ace04475857d984b0b8e06e5.jpg)
申明:本人博客为自己学习记录,本文学习内容主要来源以下两篇博客。
https://www.jianshu.com/p/78ba36dddad8
https://blog.csdn.net/lm_is_dc/article/details/81191207
1、基础知识
1.1 库
主要用到的两个库:
- numpy
- matplotlib.pyplot
1.2 图形组成标签
图片来源:https://www.jianshu.com/p/78ba36dddad8
几个重要的标签:
- Figure(图像窗口):Figure 是包裹 Axes、tiles、legends 等组件的最外层窗口。它其实是一个 Windows 应用窗口。
- Axes(轴域/子图):Axes 是带有数据的图像区域。一个 Figure 中可以有多个子图。
- Axis(轴):X Axis和Y Axis。
1.3 导入库
import numpy as npimport matplotlib.pyplot as plt
2、绘图
2.1 包含单条曲线的图
- 正比例函数
from matplotlib import pyplot as plt x=[1,2,3,4,5] y=[2,4,6,8,10] plt.figure() # 定义一个图像窗口 plt.plot(x,y) # 绘制曲线 plt.show() #显示图像
结果:
- 指数函数
import numpy as np from matplotlib import pyplot as plt x1=np.arange(-np.pi,np.pi,0.01) # y1=np.power(x1,2) #指数函数 y1=x1**2 #指数函数(同上) plt.figure() # 定义一个图像窗口 plt.plot(x1,y1) # 绘制曲线 plt.show() #显示图像
结果:
2.2 包含多条曲线的图
-
连续调用多次plot函数
import numpy as np from matplotlib import pyplot as plt x=[1,2,3,4,5] y=[2,4,6,8,10] x1=np.arange(-np.pi,np.pi,0.01) # y1=np.power(x1,2) #指数函数 y1=x1**2 #指数函数(同上) plt.figure() # 定义一个图像窗口 plt.plot(x,y) # 绘制曲线y plt.plot(x1,y1) # 绘制曲线y1 plt.show() #显示图像
结果:
- 也可以在一个plot函数中传入多对X,Y值,在一个图中绘制多个曲线
import numpy as np from matplotlib import pyplot as plt x=[1,2,3,4,5] y=[2,4,6,8,10] x1=np.arange(-np.pi,np.pi,0.01) # y1=np.power(x1,2) #指数函数 y1=x1**2 #指数函数(同上) plt.figure() # 定义一个图像窗口 plt.plot(x,y,x1,y1) # 绘制曲线y,y1, 注意顺序 #plt.plot(x1,y1) # 绘制曲线y1 plt.show() #显示图像
2.3 将多个曲线图绘制在一个Figure(图像窗口)区域中:对象形式创建表图
a=plt.subplot(row,col,loc) 创建曲线图 a.plot(x,y) 绘制曲线图
实例:
import numpy as np from matplotlib import pyplot as plt x=[1,2,3,4,5] y=[2,4,6,8,10] x1=np.arange(-np.pi,np.pi,0.01) # y1=np.power(x1,2) #指数函数 y1=x1**2 #指数函数(同上) x2=np.linspace(-np.pi,np.pi,5) 、 y2=np.sin(x) plt.figure() # 定义一个图像窗口 a1=plt.subplot(2,2,1) #创建曲线图 a1.plot(x,y) #绘制曲线图 a2=plt.subplot(2,2,2) #创建曲线图 a2.plot(x1,y1) # 绘制曲线 a3=plt.subplot(223) #创建曲线图 可以省略逗号 a3.plot(x2,y2) # 绘制曲线 plt.show() #显示图像
结果:
2.4 网格线gride
参数:
- axis
- color:支持十六进制颜色
- linestyle: – -. :
- alpha :
设置网格:
- 直接设置:plt.grid()
- 使用对象设置:a=plt.subplot(221) a.grid()
import numpy as np from matplotlib import pyplot as plt x=np.linspace(-np.pi,np.pi,100) y=np.sin(x) a1=plt.subplot(221) a1.grid() a1.plot(x,y) a2=plt.subplot(222) a2.grid() a2.plot(x,y) a3=plt.subplot(223) a3.grid() a3.plot(x,y) a4=plt.subplot(224) a4.grid() a4.plot(x,y) plt.show() #显示图像
结果:
2.5 坐标轴界限
- 修改x,y轴刻度值
plt.axis([xmin,xmax,ymin,ymax])
例如:plt.axis([-4,4,-2,2])
- 关闭坐标轴
plt.axis('off')
- 设置画布比例
plt.figure(figsize=(a,b))
参数:
- a:x刻度比例;
- b:y刻度比例
- (2:1)表示x刻度显示为y刻度显示的2倍 。
- xlim方法和ylim方法
可以通过plt的xlim(xmin,xmax),ylim方法设置坐标轴范围;
plt.xlim(-6,6) plt.ylim(-2,2)
- 通过对象的方式设置x,y轴的刻度值范围 ax.set_xlim(a,b)
ax1=plt.subplot(111) ax1.set_xlim(-4,4) ax1.set_ylim(-2,2)
2.6 坐标轴标签
- color 标签颜色
- fontsize 字体大小
- rotation 旋转角度
- plt的xlabel方法和ylabel方法
import numpy as np from matplotlib import pyplot as plt x=np.linspace(-np.pi,np.pi,100) y=np.cos(x) plt.title('tittle') plt.ylabel('yyy',fontsize=16,rotation=90,color='r') plt.xlabel('xxx',fontsize=16) plt.plot(x,y) plt.show()
结果:
- 对象方法set_xlabel/ylabel()
2.6.1 显示坐标轴中文标签
设置参数:fontproperties
import numpy as np from matplotlib import pyplot as plt x=np.linspace(-np.pi,np.pi,100) y=np.cos(x) ax=plt.subplot(111) ax.set_xlabel('x轴',fontproperties='KaiTi',fontsize=18) #对象方法 ax.set_ylabel('y轴',fontproperties='KaiTi',fontsize=18) ax.set_title('标题',fontproperties='KaiTi',fontsize=16) ax.plot(x,y) plt.show()
2.7、 标题
- plt.title()方法
- ax.set_title()方法
2.8、图例
2.8.1 legend方法
两种传参方法:
- - 分别在plot函数中增加label参数,再调用plt.legend()方法显示
x=np.linspace(0,10,30) y=x ** 2 plt.plot(x,y,label='aaa') #参数传递方法1,绘制曲线 plt.plot(x+1,y-1,label='bbb') plt.legend()
- - 直接在legend方法中传入字符串列表
import numpy as np from matplotlib import pyplot as plt x=np.linspace(0,10,30) y=x ** 2 plt.plot(x,y) plt.plot(x+1,y-1) plt.legend(['a','b']) plt.show()
2.8.2 legend的参数
-
loc参数 : 用于设置图例标签的位置,一般在legend函数内
-
matplotlib已经预定义好几种数字表示的位置,见下表:
例如:plt.legend(['aaa','bbb'],loc=5)
loc参数可以是2元素的元组,表示图例左下角的坐标:
- [0,0] 左下
- [0,1] 左上
- [1,0] 右下
-
[1,1] 右上
-
ncol参数 : 控制图例中有几列,在legend中设置ncol。
例如:plt.legend(['aaa','bbb'],loc=[1,1],ncol=2)
(ncol:两行)
2.9、 保存图片
使用figure对象的savefig函数来保存图片:
- 使用plt进行绘图。。。。。。。然后保存图片
- 然后保存图片 plt.savefig(filename='./111.jpg',dpi=500)
参数说明:
- 图像格式由文件扩展名推断得出,例如,.pdf推断出PDF,.png推断出PNG (“png”、“pdf”、“svg”、“ps”、“eps”……)
- dpi : 图像分辨率(每英寸点数),默认为100 ;
- facecolor :图像的背景色,默认为“w”(白色);
读取图片:
img=plt.imread('./111.jpg')
plt.imshow(img)
plt.show()
为什么没有线了!!!
3、设置plot的风格和样式
未完、、、、
内容总结
以上是互联网集市为您收集整理的python绘图全部内容,希望文章能够帮你解决python绘图所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。