机器学习-数据可视化神器matplotlib学习之路(三)
之前学习了一些通用的画图方法和技巧,这次就学一下其它各种不同类型的图。好了先从散点图开始,上代码:
from matplotlib import pyplot as plt
import numpy as np n = 1024 #生成1024个点
x = np.random.normal(0, 1, n) #正态分布x坐标,均值0标准差1
y = np.random.normal(0, 1, n) #正态分布y坐标,均值0标准差1
color = np.arctan2(y, x) #这个用于渲染好看的颜色,自己琢磨意义,哈哈
plt.scatter(x, #x坐标
y, #y坐标
s=50, #点的大小
c=color, #颜色
alpha=0.5, #透明度
cmap='magma' #颜色板,看文档或者源码有很多类型,自己可以试试,如summer、winter、pink
)
plt.show()

散点图还是比较简单,关于一些常用设置,如坐标、图例、文字等可以看我之前的学习文章,还有就是很多参数这些看看api或者源码都能搞懂的。
接下来是简单用一下条形图:
from matplotlib import pyplot as plt
import numpy as np n = 12
x = np.arange(12) #12个条形
y1 = np.random.uniform(1, 10, n) #分布1-10的高度
y2 = -np.random.uniform(1, 10, n) #分布(-1)-(-10)的高度
plt.bar(x, y1)
plt.bar(x, y2) #接下来在条形上下方加上数值
for x0,y0 in zip(x, y1):
plt.text(x0,
y0,
'%.2f' % y0, #保留两位小数
ha='center', #水平对齐方式
va='bottom' #垂直对齐方式
) for x0, y0 in zip(x, y2):
plt.text(x0,
y0,
'%.2f' % y0, # 保留两位小数
ha='center', # 水平对齐方式
va='top' # 垂直对齐方式
)
plt.show()

好了,一个双层的条形图就完成了。其它还有什么饼图、直方图、等高线图等待很多,就不一一写出来了,接下来再弄一弄在一个figure显示多个图吧
其实很简单了,这里要用到subplot(n,m,d)将图分成n行m列,添加地d个格子的图像,接下来偷懒了,就用上面两个例子放一起就好了
from matplotlib import pyplot as plt
import numpy as np plt.figure(num=1, figsize=(12, 6))#设置figure属性,因为要放两张图,这里把宽度弄大点
plt.subplot(1, 2, 1)#1行2列第一个格子ax画图
n = 12
x = np.arange(12) #12个条形
y1 = np.random.uniform(1, 10, n) #分布1-10的高度
y2 = -np.random.uniform(1, 10, n) #分布(-1)-(-10)的高度
plt.bar(x, y1)
plt.bar(x, y2) #接下来在条形上下方加上数值
for x0,y0 in zip(x, y1):
plt.text(x0,
y0,
'%.2f' % y0, #保留两位小数
ha='center', #水平对齐方式
va='bottom' #垂直对齐方式
) for x0, y0 in zip(x, y2):
plt.text(x0,
y0,
'%.2f' % y0, # 保留两位小数
ha='center', # 水平对齐方式
va='top' # 垂直对齐方式
)
#到这里都是第一个ax格子的图像 plt.subplot(1, 2, 2)#开始在的二个ax画图
n = 1024 #生成1024个点
x = np.random.normal(0, 1, n) #正态分布x坐标,在0-1范围
y = np.random.normal(0, 1, n) #正态分布y坐标,在0-1范围
color = np.arctan2(y, x) #这个用于渲染好看的颜色,自己琢磨意义,哈哈
plt.scatter(x, #x坐标
y, #y坐标
s=50, #点的大小
c=color, #颜色
alpha=0.5, #透明度
cmap='magma' #颜色板,看文档或者源码有很多类型,自己可以试试,如summer、winter、pink
)
plt.show()

plt.figure()里面还有很多属性,比如背景颜色板,x和y轴是否共享坐标等等,自己看api和源码吧。哈哈,今天就到这儿。
机器学习-数据可视化神器matplotlib学习之路(三)的更多相关文章
- 机器学习-数据可视化神器matplotlib学习之路(五)
这次准备做一下pandas在画图中的应用,要做数据分析的话这个更为实用,本次要用到的数据是pthon机器学习库sklearn中一组叫iris花的数据,里面组要有4个特征,分别是萼片长度.萼片宽度.花瓣 ...
- 机器学习-数据可视化神器matplotlib学习之路(二)
之前学习了matplotlib的一些基本画图方法(查看上一节),这次主要是学习在图中加一些文字和其其它有趣的东西. 先来个最简单的图 from matplotlib import pyplot as ...
- 机器学习-数据可视化神器matplotlib学习之路(一)
直接上代码吧,说明写在备注就好了,这次主要学习一下基本的画图方法和常用的图例图标等 from matplotlib import pyplot as plt import numpy as np #这 ...
- 机器学习-数据可视化神器matplotlib学习之路(四)
今天画一下3D图像,首先的另外引用一个包 from mpl_toolkits.mplot3d import Axes3D,接下来画一个球体,首先来看看球体的参数方程吧 (0≤θ≤2π,0≤φ≤π) 然 ...
- Python数据可视化——使用Matplotlib创建散点图
Python数据可视化——使用Matplotlib创建散点图 2017-12-27 作者:淡水化合物 Matplotlib简述: Matplotlib是一个用于创建出高质量图表的桌面绘图包(主要是2D ...
- 学习之路三十九:新手学习 - Windows API
来到了新公司,一开始就要做个程序去获取另外一个程序里的数据,哇,挑战性很大. 经过两周的学习,终于搞定,主要还是对Windows API有了更多的了解. 文中所有的消息常量,API,结构体都整理出来了 ...
- 学机器学习,不会数据分析怎么行——数据可视化分析(matplotlib)
前言 前面两篇文章介绍了 python 中两大模块 pandas 和 numpy 的一些基本使用方法,然而,仅仅会处理数据还是不够的,我们需要学会怎么分析,毫无疑问,利用图表对数据进行分析是最容易的, ...
- python 数据可视化(matplotlib)
matpotlib 官网 :https://matplotlib.org/index.html matplotlib 可视化示例:https://matplotlib.org/gallery/inde ...
- 绘图和数据可视化工具包——matplotlib
一.Matplotlib介绍 Matplotlib是一个强大的Python**绘图**和**数据可视化**的工具包. # 安装方法 pip install matplotlib # 引用方法 impo ...
随机推荐
- 字符串最长子串匹配-dp矩阵[转载]
转自:https://blog.csdn.net/zls986992484/article/details/69863710 题目描述:求最长公共子串,sea和eat.它们的最长公共子串为ea,长度为 ...
- [LeetCode] 88. Merge Sorted Array_Easy tag: Two Pointers
Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array. Note: T ...
- unity3d-射线(Ray)
射线Ray 射线是一个点向另外一个点发生的一条线,一旦与其他模型发生碰撞,他将停止发射.注意这条件是逻辑上的,界面上看不到. 一般使用射线判断是否发射至某个游戏对象上或者获得鼠标点击的游戏对象等. 用 ...
- 【介绍+安装】Nginx的介绍和安装详解
== 介绍和安装 == Nginx是一个自由.开源.高性能及轻量级的HTTP服务器及反转代理服务器, 其性能与IMAP/POP3代理服务器相当.Nginx以其高性能.稳定.功能丰富.配置简单及占用系统 ...
- mysql普通查询日志
- 分布式一致性Hash
转载: https://blog.csdn.net/bntX2jSQfEHy7/article/details/79549368 为什么要有Hash一致性算法?就像以前介绍为什么要有Spring一样, ...
- 利用js添加class
来来来,开篇点题. 分页应用.当在当前页时,分页的数字有个框之类的. 重要代码如下 <ul class="pagination"> <li><a hr ...
- python isinstance()与type()的区别
例如在继承上的区别: isinstance() 会认为子类是一种父类类型,考虑继承关系. type() 不会认为子类是一种父类类型,不考虑继承关系. class A: pass class B(A): ...
- 查看.mobileprovision 详细信息
.mobileprovision 用诸如sublime 等工具是无法打开. 可以通过shell命令查看: security cms -D -i 某某.mobileprovision
- C_Learning(3)
/ 结构体 / 声明结构体类型的一般形式: struct 结构体名[--表示的是这个结构体的类型] { 成员列表 }; [不要漏掉这个";"] / 声明结构可以放在main函 ...