linuxsir首页 LinuxSir.Org | Linux、BSD、Solaris、Unix | 开源传万世,因有我参与欢迎您!
网站首页 | 设为首页 | 加入收藏
您所在的位置:主页 > Linux基础建设 >

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

时间:2019-04-16  来源:未知  作者:admin666

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呢福彩3d选号技巧-上鼎狐网?”

这是因为,在我们使用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

友情链接
  • PostgreSQL辟谣存在任意代码执行漏洞:消息不实
  • Firefox beta开始原生支持Windows 10 ARM64
  • fork()成为负担,需要淘汰
  • Ruby 2.3已结束支持,不再发布版本补丁
  • 优麒麟19.04即将发布,华为、阿里云、重大、360四大境像站鼎力支
  • Fedora提出统一流程,弃用上千Python 2软件包更可控
  • Edge on Linux?微软:会有的,但不是现在
  • Mozilla准备让“合格” Linux用户测试WebRender
  • Chrome不想让HTTPS网站通过HTTP下载文件
  • 2019开发者调查:Python或成赢家,Java最不赚钱?
  • 与Red Hat联手,Fedora要支持ARM笔记本
  • Mozilla宣布即将推出Firefox推荐扩展程序计划
  • 新版Chrome等主流浏览器将不再允许关闭点击跟踪
  • WireGuard 0.0.20190406最新快照发布,提供FreeBSD补丁和其他调
  • KDE Plasma 5.16 与 KDE Frameworks 5.57 每周功能总结
  • GIMP 2.10.10 发布,小功能添加和其他改进
  • 到2019年底,LVFS可能会托管1万多个固件文件
  • Visual Studio 2019 发布,带来Live Share 与 IntelliCode
  • Gitpod
  • 关注2019年最佳职位
  • GNU的GasU获得了对Intel BFloat16的支持
  • SuperTuxKart 0.10 RC1 发布,支持局域网/互联网多人游戏
  • Godot 3.2为其2D引擎获得伪3D支持
  • ConnMan 1.37 发布,作为Linux网络连将近一年的第一次更新
  • GitHub有超过3000个提到Vulkan的项目,D3D12有100~200个
  • Ant Design 3.16.2发布,企业级UI设计语言
  • TIOBE 2019年4月编程语言排行榜:C++重回前三名
  • Linux Kernel 5.1 RC3 发布,看起来很不错
  • 英特尔的IWD Linux无线守护进程继续提升新功能
  • 数据库技术 第485页
  • 改进的Spectre/Meltdown开关最终可能会进入Linux内核
  • 关于 Oracle redo与undo 的认识
  • Zabbix 4.2 发布,现代监控系统
  • Oracle DataGuard 报密码文件错误排查
  • Wine 4.6支持共享Wine
  • Facebook为Goya AI加速器开发Glow编译器后端
  • 体彩11选5走势图
  • 新濠博亚
  • 体彩排列3字谜
  • 德州扑克技巧
  • 中国足球内幕
  • 欧博娱乐
  • pk10改20分钟一期