matplotlib.pyplot.plot()参数使用详解


Posted in Python onJuly 28, 2020

在交互环境中查看帮助文档:

import matplotlib.pyplot as plt
help(plt.plot)

以下是对帮助文档重要部分的翻译:

plot函数的一般的调用形式:

#单条线:
plot([x], y, [fmt], data=None, **kwargs)
#多条线一起画
plot([x], y, [fmt], [x2], y2, [fmt2], ..., **kwargs)

可选参数[fmt] 是一个字符串来定义图的基本属性如:颜色(color),点型(marker),线型(linestyle),

具体形式  fmt = '[color][marker][line]'

fmt接收的是每个属性的单个字母缩写,例如:

plot(x, y, 'bo-') # 蓝色圆点实线

若属性用的是全名则不能用*fmt*参数来组合赋值,应该用关键字参数对单个属性赋值如:

plot(x,y2,color='green', marker='o', linestyle='dashed', linewidth=1, markersize=6)

plot(x,y3,color='#900302',marker='+',linestyle='-')

常见的颜色参数:**Colors**

也可以对关键字参数color赋十六进制的RGB字符串如 color='#900302'

============= ===============================
 character  color
 ============= ===============================
 ``'b'``   blue 蓝
 ``'g'``   green 绿
 ``'r'``   red 红
 ``'c'``   cyan 蓝绿
 ``'m'``   magenta 洋红
 ``'y'``   yellow 黄
 ``'k'``   black 黑
 ``'w'``   white 白
 ============= ===============================

点型参数**Markers**,如:marker='+' 这个只有简写,英文描述不被识别

============= ===============================
 character  description
 ============= ===============================
 ``'.'``   point marker
 ``','``   pixel marker
 ``'o'``   circle marker
 ``'v'``   triangle_down marker
 ``'^'``   triangle_up marker
 ``'<'``   triangle_left marker
 ``'>'``   triangle_right marker
 ``'1'``   tri_down marker
 ``'2'``   tri_up marker
 ``'3'``   tri_left marker
 ``'4'``   tri_right marker
 ``'s'``   square marker
 ``'p'``   pentagon marker
 ``'*'``   star marker
 ``'h'``   hexagon1 marker
 ``'H'``   hexagon2 marker
 ``'+'``   plus marker
 ``'x'``   x marker
 ``'D'``   diamond marker
 ``'d'``   thin_diamond marker
 ``'|'``   vline marker
 ``'_'``   hline marker
 ============= ===============================

线型参数**Line Styles**,linestyle='-'

============= ===============================
 character  description
 ============= ===============================
 ``'-'``   solid line style 实线
 ``'--'``   dashed line style 虚线
 ``'-.'``   dash-dot line style 点画线
 ``':'``   dotted line style 点线
 ============= ===============================

样例1

函数原型:matplotlib.pyplot.plot(*args, scalex=True, scaley=True, data=None, **kwargs)

>>> plot('xlabel', 'ylabel', data=obj)

解释:All indexable objects are supported. This could e.g. be a dict, a pandas.DataFame or a structured numpy array.

data 参数接受一个对象数据类型,所有可被索引的对象都支持,如 dict 等

import matplotlib.pyplot as plt 
import numpy as np
'''read file 
fin=open("para.txt")
a=[]
for i in fin:
 a.append(float(i.strip()))
a=np.array(a)
a=a.reshape(9,3)
'''
a=np.random.random((9,3))*2 #随机生成y
 
y1=a[0:,0]
y2=a[0:,1]
y3=a[0:,2]
 
x=np.arange(1,10)
 
ax = plt.subplot(111)
width=10
hight=3
ax.arrow(0,0,0,hight,width=0.01,head_width=0.1, head_length=0.3,length_includes_head=True,fc='k',ec='k')
ax.arrow(0,0,width,0,width=0.01,head_width=0.1, head_length=0.3,length_includes_head=True,fc='k',ec='k')
 
ax.axes.set_xlim(-0.5,width+0.2)
ax.axes.set_ylim(-0.5,hight+0.2)
 
plotdict = { 'dx': x, 'dy': y1 }
ax.plot('dx','dy','bD-',data=plotdict)
 
ax.plot(x,y2,'r^-')
ax.plot(x,y3,color='#900302',marker='*',linestyle='-')
 
plt.show()

matplotlib.pyplot.plot()参数使用详解

样例2,

import matplotlib.pyplot as plt 
import numpy as np 
 
x = np.arange(0, 2*np.pi, 0.02) 
y = np.sin(x) 
y1 = np.sin(2*x) 
y2 = np.sin(3*x) 
ym1 = np.ma.masked_where(y1 > 0.5, y1) 
ym2 = np.ma.masked_where(y2 < -0.5, y2) 
 
lines = plt.plot(x, y, x, ym1, x, ym2, 'o') 
#设置线的属性
plt.setp(lines[0], linewidth=1) 
plt.setp(lines[1], linewidth=2) 
plt.setp(lines[2], linestyle='-',marker='^',markersize=4) 
#线的标签
plt.legend(('No mask', 'Masked if > 0.5', 'Masked if < -0.5'), loc='upper right') 
plt.title('Masked line demo') 
plt.show()

matplotlib.pyplot.plot()参数使用详解

例3 :圆

import numpy as np
import matplotlib.pyplot as plt
 
theta = np.arange(0, 2*np.pi, 0.01)
xx = [1,2,3,10,15,8]
yy = [1,-1,0,0,7,0]
rr = [7,7,3,6,9,9]
 
fig = plt.figure()
axes = flg.add_subplot(111)
 
i = 0
while i < len(xx):
 x = xx[i] + rr[i] *np.cos(theta)
 x = xx[i] + rr[i] *np.cos(theta)
 axes.plot(x,y)
 axes.plot(xx[i], yy[i], color='#900302', marker='*')
  i = i+1
width = 20
hight = 20
axes.arrow(0,0,0,hight,width=0.01,head_width=0.1,head_length=0.3,fc='k',ec='k')
axes.arrow(0,0,width,0,width=0.01,head_width=0.1,head_length=0.3,fc='k',ec='k')
plt.show()

 到此这篇关于matplotlib.pyplot.plot()参数详解的文章就介绍到这了,更多相关matplotlib.pyplot.plot()内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python函数中定义参数的四种方式
Nov 30 Python
Django中对数据查询结果进行排序的方法
Jul 17 Python
Python中使用Queue和Condition进行线程同步的方法
Jan 19 Python
Python中__init__.py文件的作用详解
Sep 18 Python
浅谈Python浅拷贝、深拷贝及引用机制
Dec 15 Python
python3中bytes和string之间的互相转换
Feb 09 Python
python网络编程调用recv函数完整接收数据的三种方法
Mar 31 Python
python删除文本中行数标签的方法
May 31 Python
Python使用pyautogui模块实现自动化鼠标和键盘操作示例
Sep 04 Python
Python3中_(下划线)和__(双下划线)的用途和区别
Apr 26 Python
Python实现Mysql数据统计及numpy统计函数
Jul 15 Python
Jupyter notebook快速入门教程(推荐)
May 18 Python
matplotlib图例legend语法及设置的方法
Jul 28 #Python
Matplotlib中%matplotlib inline如何使用
Jul 28 #Python
Python基于xlrd模块处理合并单元格
Jul 28 #Python
Python 在函数上添加包装器
Jul 28 #Python
Python matplotlib图例放在外侧保存时显示不完整问题解决
Jul 28 #Python
Python 如何反方向迭代一个序列
Jul 28 #Python
Python Matplotlib简易教程(小白教程)
Jul 28 #Python
You might like
打造计数器DIY三步曲(下)
2006/10/09 PHP
PHP实现查询两个数组中不同元素的方法
2016/02/23 PHP
PHP对象相关知识总结
2017/04/09 PHP
php模拟实现斗地主发牌
2020/04/22 PHP
JS随机漂浮广告代码具体实例
2013/11/19 Javascript
NodeJS Express框架中处理404页面一个方式
2014/05/28 NodeJs
常用的JS验证和函数汇总
2014/12/23 Javascript
jQuery插件MixItUp实现动画过滤和排序
2015/04/12 Javascript
基于jquery实现轮播焦点图插件
2016/03/31 Javascript
学习Javascript闭包(Closure)知识
2016/08/07 Javascript
js放到head中失效的原因与解决方法
2017/03/07 Javascript
详解基于webpack和vue.js搭建开发环境
2017/04/05 Javascript
详解nodejs微信公众号开发——1.接入微信公众号
2017/04/10 NodeJs
jQuery返回定位插件详解
2017/05/15 jQuery
js实现鼠标移动到图片产生遮罩效果
2017/10/21 Javascript
利用vscode调试编译后的js代码详解
2018/05/14 Javascript
js实现轮播图的完整代码
2020/10/26 Javascript
Python实现从url中提取域名的几种方法
2014/09/26 Python
python通过线程实现定时器timer的方法
2015/03/16 Python
python实现根据ip地址反向查找主机名称的方法
2015/04/29 Python
Python三级目录展示的实现方法
2016/09/28 Python
python制作websocket服务器实例分享
2016/11/20 Python
python+matplotlib绘制3D条形图实例代码
2018/01/17 Python
pandas groupby 分组取每组的前几行记录方法
2018/04/20 Python
Python操作redis实例小结【String、Hash、List、Set等】
2019/05/16 Python
pyqt 实现为长内容添加滑轮 scrollArea
2019/06/19 Python
pandas如何处理缺失值
2019/07/31 Python
python读取mysql数据绘制条形图
2020/03/25 Python
Python通过Pillow实现图片对比
2020/04/29 Python
Python requests模块安装及使用教程图解
2020/06/30 Python
Python解析m3u8拼接下载mp4视频文件的示例代码
2021/03/03 Python
请解释一下webService? 如何用.net实现webService
2014/06/09 面试题
个人投资计划书
2014/05/01 职场文书
党员四风问题对照检查材料
2014/09/27 职场文书
教师求职信怎么写
2015/03/20 职场文书
送给自己的励志语句:要安静的优秀,悄无声息的坚强
2019/11/26 职场文书