pyplot官网教程https://matplotlib.org/users/pyplot_tutorial.html

#导入matplotlib的pyplot模块
import matplotlib.pyplot as plt

plot用于绘制线条

'''
第1步:定义x和y坐标轴上的点
'''
#x坐标轴上点的数值
x=[1, 2, 3, 4]
#y坐标轴上点的数值
y=[1, 4, 9, 16] '''
第2步:使用plot绘制线条
第1个参数是x的坐标值,第2个参数是y的坐标值
'''
plt.plot(x,y) '''
第3步:显示图形
''' plt.show()

设置线条属性,文档:https://matplotlib.org/api/_as_gen/matplotlib.lines.Line2D.html#matplotlib.lines.Line2D

'''
color:线条颜色,值r表示红色(red)
marker:点的形状,值o表示点为圆圈标记(circle marker)
linestyle:线条的形状,值dashed表示用虚线连接各点
'''
plt.plot(x, y, color='r',marker='o',linestyle='dashed')
#plt.plot(x, y, 'ro')
'''
axis:坐标轴范围
语法为axis[xmin, xmax, ymin, ymax],
也就是axis[x轴最小值, x轴最大值, y轴最小值, y轴最大值]
'''
plt.axis([0, 6, 0, 20])
plt.show()

如果matplotlib参入的参数只能是列表的话,这对数据处理很不利。

一般,我们传入的是numpy的数组。实际上,所有参入的值内部都会转换为numpy的数组。

'''
# arange用于生成一个等差数组,arange([start, ]stop, [step, ]
使用见文档:https://docs.scipy.org/doc/numpy/reference/generated/numpy.arange.html
'''
import numpy as np
t = np.arange(0, 5, 0.2)
t
'''
使用数组同时绘制多个线性
'''
#线条1
x1=y1=t '''
运算符**,表示幂 - 返回x的y次幂,例如10**20表示10的20次方
详细见文档《Python3运算符》:http://www.runoob.com/python3/python3-basic-operators.html
'''
#线条2
x2=x1
y2=t**2 #线条3
x3=x1
y3=t**3 #使用plot绘制线条
linesList=plt.plot(x1, y1,
x2, y2,
x3, y3 ) #用setp方法可以同时设置多个线条的属性
plt.setp(linesList, color='r') plt.show() print('返回的数据类型',type(linesList))
print('数据大小:',len(linesList))

在图上添加文本

参考文档:如何在图上添加文本

#找到 matplotlib 加载的配置文件路径
import matplotlib
matplotlib.matplotlib_fname()
"""设置字体,用于显示中文"""
plt.rcParams['font.sans-serif']=['FangSong']
"""SimSun 宋体,Microsoft YaHei微软雅黑 YouYuan幼圆 FangSong仿宋"""
plt.rcParams['font.size']=20
plt.rcParams['axes.unicode_minus']=False# 负号乱码
'''
第1步:定义x和y坐标轴上的点
'''
#x坐标轴上点的数值
x=[1, 2, 3, 4]
#y坐标轴上点的数值
y=[1, 4, 9, 16] '''
第2步:使用plot绘制线条
第1个参数是x的坐标值,第2个参数是y的坐标值
'''
plt.plot(x,y) '''
添加文本
'''
#x轴文本
plt.xlabel('x坐标轴')
#y轴文本
plt.ylabel('y坐标轴')
#标题
plt.title('标题')
#添加注释
'''
添加注释:
参数名xy:箭头注释中箭头所在位置,
参数名xytext:注释文本所在位置,
arrowprops在xy和xytext之间绘制箭头,
shrink表示注释点与注释文本之间的图标距离
'''
plt.annotate('我是注释', xy=(2,5), xytext=(2, 10),
arrowprops=dict(facecolor='black', shrink=0.01),
)
'''
第3步:显示图形
'''
plt.show()

多个图绘图

#创建画板1
fig = plt.figure(1) #第2步:创建画纸(子图)
'''
subplot()方法里面传入的三个数字
前两个数字代表要生成几行几列的子图矩阵,第三个数字代表选中的子图位置
subplot(211)生成一个2行1列的子图矩阵,当前是第一个子图
'''
#创建画纸,并选择画纸1
#等价于ax1=fig.add_subplot(211)
ax1=plt.subplot(2,1,1)
#在画纸上绘图
plt.plot([1, 2, 3])
#选择画纸2
ax2=plt.subplot(2,1,2)
#在画纸2上绘图
plt.plot([4, 5, 6]) plt.show()

如果没有指明画板figure()和子图subplot,会默认创建一个画板figure(1) 和一个子图subplot(111)

最新文章

  1. JVM 新生代老年代
  2. Android——GridView(网格视图)相关知识总结贴
  3. 在uwp仿制WPF的Window
  4. 6.24 AppCan移动开发者大会,我爱我家即将闪亮登场!
  5. vector 的resize 和 reserve
  6. Jsp中使用EL表达式对字符串进行操作
  7. iOS 获取公历、农历日期的年月日
  8. jquary高级和ajax
  9. Problem A: 让动物们叫起来吧!
  10. 【转帖】介绍 .NET Standard
  11. jenkins 找插件下载的方法
  12. http头文件User-Agent详解【转载】
  13. 利用yum升级Centos6的gcc版本,使其支持C++11
  14. libxml2.dylb 罗致<libxml/tree.h> 老是找不到头文件
  15. numpy技巧
  16. Alpha阶段项目Postmortem会议总结
  17. 【性能测试】:关于Sockets协议的脚本的开发
  18. If a cache file exists, it is sent directly to the browser, bypassing the normal system execution.
  19. window.open()被浏览器拦截问题汇总
  20. iis 重启命令

热门文章

  1. Java并发J.U.C学习总结
  2. Git实战指南----跟着haibiscuit学Git(第八篇)
  3. 软工第八次实验——Git
  4. 12-《Node.js开发指南》-核心模块
  5. mysql数据库基础SQL语句总结篇
  6. 从荣耀 xSport Pro 运动蓝牙耳机发布看蓝牙立体声耳机的新动态
  7. Hyperledger Fabric相关文件解析
  8. 痞子衡嵌入式:飞思卡尔i.MX RTyyyy系列MCU特性那些事(2)- RT1052DVL6性能实测(CoreMark)
  9. 03-JVM-垃圾回收算法
  10. C#函数(构造函数)的重载