手机版
你好,游客 登录 注册
背景:
阅读新闻

Python教程Matplotlib数据可视化入门篇

[日期:2019-04-11] 来源:Linux社区  作者:Linux [字体: ]

Pyplot

matplotlib.pyplot是一个命令型函数集合,它可以让我们像使用MATLAB一样使用matplotlib。pyplot中的每一个函数都会对画布图像作出相应的改变,如创建画布、在画布中创建一个绘图区、在绘图区上画几条线、给图像添加文字说明等。下面我们就通过实例代码来领略一下他的魅力。

import matplotlib.pyplot as plt
plt.plot([5,4,3,2,1])
plt.ylabel('www.linuxidc.com')
plt.show()

上图是我们通过plt.plot([5,4,3,2,1])这一行代码画出的图像,这时候有的小伙伴可能会有一个疑问,“为什么X轴的坐标轴范围是0-4,而Y轴的坐标轴围是1-5呢?”

这是因为,在我们使用plot()命令函数的时候,如果只给函数传递了一个数值列表或数组作为参数,matplotlib会把这个数值列表当作Y轴的数值,然后根据Y轴的数值个数N自动生成一个数值列表[0,N-1]作为X轴的数值。所以上图中Y轴数值就是我们给定的列表[1,2,3,4,5],X轴数值是自动生成的列表[0,1,2,3,4]。

看到这里有的小伙伴可能会想,这也太弱了吧。大家不要着急,我们一步步的来学习,上图只是一个非常简单例子,其实plot() 命令的功能非常强大,通过该命令我们可以同时传递多个图像参数。比如说,我们想同时给定X轴和Y轴的数值,我们就可以通过下面一行代码实现:
plt.plot([1, 2, 3, 4], [1, 4, 9, 16]) #X:[1, 2, 3, 4],Y:[1, 4, 9, 16]

此外,我们还可以像MATLAB一样在每一组X轴和Y轴数值的后面传递一个形式为“颜色+线型”的字符串参数,这个参数可以设置我们图像中的线的颜色和类型,默认的参数为'b-',代表蓝色实线。

命令支持的颜色字符有:

  • 'b':蓝色
  • 'g':绿色
  • 'r':红色
  • 'c':青色
  • 'm':洋红色
  • 'y':黄色
  • 'k':黑色
  • 'w':白色

控制线型

符号和线型之间的对应关系
-      实线
--    短线
-.    短点相间线
:    虚点线

字符控制标记风格

标记风格有多种:

.  点标记
,  像素标记
o  圆形标记
v  三角形下来的标记
^  三角形标记
<  三角形左标记
>  三角形右标记
1  三脚架向下标记
2  三脚架向上标记
3  三脚架向左标记
4  三脚架向右标记
s  广场标记
p  五角星标记
*  星星标记
h  六角形标记
H  旋转六边形标记
d  薄钻石标记
| 垂直线(vlinesymbol)标记
_  水平线(hline符号)标记
+  加号标记
x  乘号x标记

当我们想要用红色圆点或者线条展示上面代码中的数据时,我们可以通过下面的代码实现:
import matplotlib.pyplot as plt
plt.plot([5,4,3,2,1], [16,9,6,4,1], 'ro')
plt.axis([0, 6, 0, 20])
plt.show()

这里的r表示红色,o表示圆点。

Python教程Matplotlib数据可视化入门篇

当我们有多组数据时,我们可在每组后面分别设置线型及颜色:

import matplotlib.pyplot as plt
import numpy as np
t = np.arange(0., 5., 0.2)
plt.plot(t, t, 'ro', t, t**2, 'bd', t, t**3, 'y^')
plt.show()

Python教程Matplotlib数据可视化入门篇

更多Python相关信息见Python 专题页面 https://www.linuxidc.com/topicnews.aspx?tid=17

Linux公社的RSS地址https://www.linuxidc.com/rssFeed.aspx

本文永久更新链接地址https://www.linuxidc.com/Linux/2019-04/158052.htm

linux
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款