matplotlib.pyplot.plot详解
参考资料:
https://blog.csdn.net/baidu_41902768/article/details/80686608
之前的随笔也有说过,matplotlib是python中一个非常常用的用来作图的库,pyplot是其中的一个包,主要是用来作2D图的,涉及的画布,图例,标签等一系列作图常规操作。这篇文章分析的是pyplot这个包下面的一个最常用的函数plot,所以使用的时候我们经常是:
import matplotlib.pyplot as plt
plt.plot()
其中把pyplot简写成plt已经成为一种习惯。因为经常会用到这个函数作图,又看了matplotlib的文档,写的非常好。所以就想学习一下记录在此。参考资料那篇文章其实做的是一样的事情,但是为了自己熟悉一遍还是一步步学习一下。
函数定义:(Plot y versus x as lines and/or markers 说的很清楚很局限,这个函数就是绘制2D图 x versus y的,线图或者点图,别的干不了。)
matplotlib.pyplot.plot(*args, scalex=True, scaley=True, data=None, **kwargs)
plot([x], y, [fmt], *, data=None, **kwargs)
plot([x], y, [fmt], [x2], y2, [fmt2], ..., **kwargs)
上面的[fmt]其实就是一个字符串,方便你格式化作图。比如'bo'='blue circle',蓝色圆点。'r--'就是红色的短线图。上面的第三行就是一次性同时画两个图时的用法。
>>> plot(x, y) # plot x and y using default line style and color
>>> plot(x, y, 'bo') # plot x and y using blue circle markers
>>> plot(y) # plot y using x as index array 0..N-1
>>> plot(y, 'r+') # ditto, but with red plusses
还可以使用关键字参数,可以和fmt共存,当fmt和关键字冲突时,关键字优先:
>>> plot(x, y, 'go--', linewidth=2, markersize=12)
>>> plot(x, y, color='green', marker='o', linestyle='dashed',
... linewidth=2, markersize=12)
带标签的数据作图:(Plotting labelled data):原文是这样的There's a convenient way for plotting objects with labelled data (i.e. data that can be accessed by index obj['y']). Instead of giving the data in x and y, you can provide the object in the data parameter and just give the labels for x and y:
plot('xlabel', 'ylabel', data=obj)
带索引的对象可以是dict,pandas.DataFame,structured numpy array.个人理解这个用法的作用就是:当你有一个表格,其中有很多列,每一个列有一个标签。当你想使用其中的两列作图的时候,将表格整体传入,但是只要你指定了标签,这个函数就会帮你把这两列取出来作图。不妨用支持的最简单类型dict做个试验。
>>>A = {'1':[1,2,3,4,5] , '2':[1,2,3,4,5] ,'3':[2,3,4,5,6]}
>>>plt.plot('1','2','r',data=A)
和预想的一样,结果就是取出字典中key为'1'和'2'的两个列表分别为x和y进行作图。
多组数据作图:一共有三种方法
1.最直接,多次调用plot函数:
>>> plot(x1, y1, 'bo')
>>> plot(x2, y2, 'go')
2.如果数据已经是2d array,可以直接传入。例:一个数组,第一列代表x values ,其他多个列代表y values。
>>> plot(a[0], a[1:])
3.明确指定多个数据集:这种情况下关键字参数将用于所有的数据集。
>>> plot(x1, y1, 'g^', x2, y2, 'g-')
Notes:有关作图格式的一些信息。
Format Strings
A format string consists of a part for color, marker and line:
fmt = '[marker][line][color]'
Each of them is optional. If not provided, the value from the style cycle is used. Exception: If line is given, but no marker, the data will be a line without markers.
Other combinations such as [color][marker][line] are also supported, but note that their parsing may be ambiguous.
Markers
| 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
| character | description |
|---|---|
'-' |
solid line style |
'--' |
dashed line style |
'-.' |
dash-dot line style |
':' |
dotted line style |
Example format strings:
'b' # blue markers with default shape
'or' # red circles
'-g' # green solid line
'--' # dashed line with default color
'^k:' # black triangle_up markers connected by a dotted line
The supported color abbreviations are the single letter codes
| character | color |
|---|---|
'b' |
blue |
'g' |
green |
'r' |
red |
'c' |
cyan |
'm' |
magenta |
'y' |
yellow |
'k' |
black |
'w' |
white |
and the 'CN' colors that index into the default property cycle.
If the color is the only part of the format string, you can additionally use any matplotlib.colors spec, e.g. full names ('green') or hex strings ('#008000').
matplotlib.pyplot.plot详解的更多相关文章
- python matplotlib.pyplot 散点图详解(1)
python matplotlib.pyplot散点图详解(1) 一.创建散点图 可以用scatter函数创建散点图 并使用show函数显示散点图 代码如下: import matplotlib.py ...
- python matplotlib.pyplot 条形图详解
python matplotlib.pyplot 条形图详解 一.创建直方图 可以用bar函数来创建直方图 然后用show函数显示直方图 比如: import matplotlib.pyplot as ...
- python matplotlib.pyplot 散点图详解(2)
python matplotlib.pyplot 散点图详解(2) 上期资料 一.散点图叠加 可以用多个scatter函数叠加散点图 代码如下: import matplotlib.pyplot as ...
- matplotlib.pyplot 绘图详解 matplotlib 安装
apt-get install python-matplotlib 转载自: http://www.cnblogs.com/qianlifeng/archive/2012/02/13/2350086. ...
- matplotlib极坐标方法详解
一.极坐标 在平面内取一个定点O,叫极点,引一条射线Ox,叫做极轴,再选定一个长度单位和角度的正方向(通常取逆时针方向).对于平面内任何一点M,用ρ表示线段OM的长度(有时也用r表示),θ表示从Ox到 ...
- matplotlib 直方图绘制详解
n, bins, patches = plt.hist(datasets, bins, normed=False, facecolor=None, alpha=None) 函数说明 用于绘制多个数据集 ...
- python matplotlib.pyplot学习记录
matplotlib是python中很强大的绘图工具,在机器学习中经常用到 首先是导入 import matplotlib.pyplot as plt plt中有很多方法,记录下常用的方法 plt.p ...
- matplotlib作图——plot() 线图
线图 #定义 matplotlib.pyplot.plot() plot([x], y, [fmt], data=None, **kwargs) plot([x], y, [fmt], [x2], y ...
- scikit-learn:matplotlib.pyplot经常使用绘图功能总结(1)
參考:http://matplotlib.org/api/pyplot_api.html 绘图功能总结(2):http://blog.csdn.net/mmc2015/article/details/ ...
随机推荐
- Floyd's Triangle
Floyd's Triangle Floyd's triangle is a right-angled triangular array of natural numbers. Floyd's tri ...
- PHP常量的定义和用法
我们通常把不经常变的值定义成常量,常量一般用全部大写来表示,前面不加美元符号,也可减少团队开发的出错.那么define和const有什么区别呢? 1.const是一个语言结构:而define是一个函数 ...
- Kubernetes 基础资料
概述 这篇文章用来记录Kubernetes 的基础资料,整体以最新官方文档为准. 因为k8s整体比较偏运维,作为研发可先大致了解其概念及初级使用方式,后面重点学习点会放在service mesh is ...
- Jquery toggle
toggle:切换显示 如 <script> $(document).ready(function(){ $("button").click(function(){ $ ...
- iOS开发MD5、SHA1
MD5: + (NSString *)md5:(NSString *)input { const char *cStr = [input UTF8String]; unsigned char dige ...
- python 比较常见的工具方法
下面是一些工作过程中比较常见的工具方法,但不代表最终答案.希望能对你有所帮助,如果您有更好更多的方法工具,欢迎推荐! 1. 按行读取带json字符串的文件 # -*- coding:utf-8 -*- ...
- 设计MyTime类 代码参考
#include <iostream> #include <cstdio> using namespace std; class MyTime { private: int h ...
- Rocket - tilelink - WidthWidget
https://mp.weixin.qq.com/s/pmJcsRMviJZjMwlwYw6OgA 简单介绍WidthWidget的实现. 1. 基本介绍 用于设定与上游节点连接 ...
- 【HBase】安装与使用
下载HBase(注意下载与您使用的hadoop版本兼容的版本) 前提:hadoop HA,zookeeper是正常的. 1.解压 tar -zxvf hbase压缩包 -C 解压后存储路径 2.配置环 ...
- 11.经典O(n²)比较型排序算法
关注公号「码哥字节」修炼技术内功心法,完整代码可跳转 GitHub:https://github.com/UniqueDong/algorithms.git 摘要:排序算法提多了,很多甚至连名字你都没 ...