博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
matplotlib.pyplot.plot()参数详解
阅读量:4096 次
发布时间:2019-05-25

本文共 4518 字,大约阅读时间需要 15 分钟。

https://matplotlib.org/api/pyplot_summary.html

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

import matplotlib.pyplot as plthelp(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=10hight=3ax.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()

样例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()

例3 :圆

import numpy as npimport matplotlib.pyplot as plttheta = 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 = 0while 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+1width = 20hight = 20axes.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()

 

 

你可能感兴趣的文章
16、Memento 备忘录模式
查看>>
Java基础篇(一)
查看>>
数据库
查看>>
rk3399pro开发板安装libgtk2.0-dev、libjpeg-dev报错
查看>>
DeepLearning.ai作业:(5-2) -- 自然语言处理与词嵌入(NLP and Word Embeddings)
查看>>
阿里员工感慨:码农们过去暴富有多轻松,现在赚钱就有多辛苦!
查看>>
大专毕业找不到工作,靠培训造假通过大厂简历筛选,结果蒙了
查看>>
程序员试用期被老板嫌工资高怒怼:要我是你就会主动要求降薪,结果蒙了!
查看>>
挂羊头卖狗肉!这家公司打着招聘的幌子赚打印费,竟年入60万!
查看>>
微软程序员求助:商汤、百度、头条、口碑、微软5份offer,怎么选?
查看>>
中科大博士写外挂被抓:涉案非法牟利 300 多万
查看>>
今年35岁,码农8年突然被裁员,未来该何去何从
查看>>
在中国程序员工作是青春饭吗?
查看>>
为什么培训班的码农总遭人嫌弃?
查看>>
为什么培训班的码农总遭人嫌弃?
查看>>
眼看拿到50万年薪,没想到死在了redis多线程问题上
查看>>
程序员怎么尽快学会某项技术,达到应付面试水平?
查看>>
表弟面试阿里又挂了,我强烈推荐程序员必备阿里面试的300+面试题(含答案解析)给他后,苦肝两月,成功上岸蚂蚁金服
查看>>
怎么评价程序员35岁了还在撸代码?
查看>>
知乎:怎么评价程序员35岁了还在撸代码?
查看>>