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

友情链接
  • Mozilla发布Firefox 67.0.4,修复沙箱逃逸漏洞
  • 蚂蚁金服正式成为CNCF云原生计算基金会黄金会员
  • Firefox 68将采用Microsoft BITS安装更新
  • OpenSSH增加对存储在RAM中的私钥的保护
  • 谷歌想实现自己的curl,为什么?
  • Raspberry Pi 4发布:更快的CPU、更大的内存
  • Firefox的UA将移除CPU架构信息
  • Ubuntu放弃支持32位应用程序实属乌龙,Steam会否重回Ubuntu怀抱
  • Qt 5.13稳定版发布:引入glTF 2.0、改进Wayland以及支持Lottie动
  • 红帽企业Linux 7现已内置Redis 5最新版
  • Slack进入微软内部禁用服务清单,GitHub也在其列?
  • 安全的全新编程语言V发布首个可用版本
  • Windows Terminal已上架,快尝鲜
  • 阿里巴巴微服务开源生态报告No.1
  • 面世两年,Google地球将支持所有基于Chromium的浏览器
  • 推进企业容器化持续创新,Rancher ECIC千人盛典完美收官
  • CentOS 8.0最新构建状态公布,或于数周后发布
  • Debian移植RISC
  • 微软拆分操作系统的计划初现雏形
  • Oracle发布基于VS Code的开发者工具,轻松使用Oracle数据库
  • Ubuntu 19.10停止支持32位的x86架构
  • 微软为Windows Terminal推出全新logo
  • 联想ThinkPad P系列笔记本预装Ubuntu系统
  • 微软发布适用于Win7/8的Microsoft Edge预览版
  • 启智平台发布联邦学习开源数据协作项目OpenI纵横
  • 经过六个多月的延迟,微软终于推出Hyper
  • ZFS On Linux 0.8.1 发布,Python可移植性工作
  • DragonFly BSD 5.6.0 发布,HAMMER2状态良好
  • Linux Kernel 5.2
  • CentOS 8.0 看起来还需要几周的时间
  • 百度网盘Linux版正式发布
  • PCIe 6.0宣布:带宽翻倍 狂飙至256GB/s
  • PHP 7.4 Alpha 发布,FFI扩展,预加载Opcache以获得更好的性能
  • Canonical将在未来的Ubuntu版本中放弃对32位架构的支持
  • Scala 2.13 发布,改进的编译器性能
  • 微软的GitHub收购了Pull Panda,并且使所有订阅完全免费
  • Windows Subsystem for Linux 2 (WSL 2)现在适用于Windows 10用
  • Debian 10 “Buster”的RISC
  • MariaDB宣布发布MariaDB Enterprise Server 10.4
  • DXVK 1.2.2 发布,带来微小的CPU开销优化
  • DragonFlyBSD 5.6 RC1 发布,VM优化,默认为HAMMER2
  • PrimeNG 8.0.0 发布,支持Angular 8,FocusTrap等
  • GIMP 2.10.12 发布,一些有用的改进
  • 清华大学Anaconda 镜像服务即将恢复
  • Debian GNU/Linux 10 “Buster” 操作系统将于2019年7月6日发布
  • 时时彩论坛
  • 五星体育斯诺克
  • 北单比分直播
  • 河北11选5走势图
  • 福建体彩36选7开奖结果
  • 九龙图库下载