Pyplot tutorial (翻译)
(第一部分)
翻译当做练习英语,并对 pyplot有进一步的理解,翻译是自己的理解。
matplotlib.pyplot 把一系列的命令风格的函数集合在一起,使得matplotlib类似MATLAB。
每一个pyplot函数都可以对生成的图像产生一些变化,例如,创建一个图像(figure),创建一个图像中的绘图区域(可见区域,可打印区域),绘制区域绘制线,用标签装饰(decorate)绘制区(plot)等。
在 matplotlib.pyplot中,各种状态可以通过函数调用来保存。所以,可以实时的跟踪例如当前图像和绘图区域等情况。绘图函数(plotting function)的着重点(directed to)在于当前的坐标系(请注意此处的‘坐标系’(axes)和大多在文档中引用图像中的坐标,并不是一个严格数学意(the strict mathematical term for more than one axis)义上坐标系,并且不仅仅指一个坐标轴)
import matplotlib.pyplot as plt
plt.plot([1,2,3,4])
plt.ylabel('some numbers')
plt.show()
运行效果如下:
你可能奇怪这个图的 X 范围是 0 到 3 ,而 Y 范围是 1 到 4.
如果你提供了一个单一的列表(像示例那样)或者一个数组给plot()命令,matplotlib 会假定 你提供的是一个Y值序列,并且自动为您创建出X值序列,既然Python的ranges 是以 0开始。
那么 默认的 X 序列(x vector)和Y值序列的长度一致,但是以 0 开始(本例有4个元素)。因此,X的数据序列是 【0,1,2,3】
plot() 是一个万能(通用)的命令,并且可以携带任意数量(arbitrary)的参数,例如,为了绘制 相对于x的y,你可以这样启用plot()命令:
plot([1,2,3,4],[1,4,9,16])
运行结果如下:
对于参数中的每一个x,y值对(pair),还可以拥有一个可以选择的(optional)第三个参数,这个参数是一个格式化字符串用来指定绘制图形的颜色和线型(linetype)。
格式化字符串中的字母(letter)和符号(symbol)来源于matlab。你可以连接(concatenate)一个颜色字符串和一个线型风格字符串,默认的格式字符串时‘b-’,它代表着蓝色实线(a solid blue line)。例如,为了用红色圆点(circle)绘制上述命令中的图形,你可以这样启用命令:
plt.plot([1,2,3,4],[1,4,9,16],'ro')
plt.axis([0,6,0,20])#注意坐标范围
运行结果如下:
可以查看plot()函数文档来获得线型风格和格式化字符串的完整列表。
在上一个例子中,axis()命令携带了一个列表参数【xmin,xmax,ymin,ymax】并且指定了坐标系(axes)的视图区(viewport)
如果matplotlib被限制在只能使用列表才能工作,那对数字处理来说就变的非常无用处了(fairly useless)。通常来说,你会使用numpy数组来工作。事实上,所有的序列都会在内部被转换为numpy数组。下面的例子,展示(illustrates)在一个命令中通过数组使用不同的格式风格绘制了几种线。
import numpy as np
import matplotlib.pyplot as plt
t = np.arange(0.,5.,0.2)
plt.plot(t,t,'r--',t,t**2,'bs',t,t**3,'g^')
plt.show()
运行结果如下:
上一篇: 第三次
推荐阅读
-
爆笑英语翻译中国的三字经
-
Oracle数据库需要打补丁到最低的Patchset/PSU/RU翻译描述
-
翻译:CONCURRENT INSERTS(已提交到MariaDB官方手册)
-
利用excel自带的翻译功能翻译短语、段落、单词或文件
-
适用于php-5.2 的 php.ini 中文版[金步国翻译]
-
PEP 492 -- Coroutines with async and await syntax 翻译
-
chrome内核浏览器不能翻译成中文该怎办? 谷歌浏览器无法翻译的解决办法
-
【翻译】配置基于策略的Blazor WebAssembly(Blazor客户端)应用程序的授权
-
2018-11-04 在线代码离线翻译Chrome插件"一马"v0.0.14
-
[翻译]EntityFramework Core 2.2 发布