[Python3] Matplotlib —— (四) 可视化异常处理
文章目录
- 五、可视化异常处理
- (一)基本误差线
- (二)连续误差
[ Matplotlib version: 3.2.1 ]
五、可视化异常处理
对任何一种科学测量方法来说,准确地衡量数据误差比数据本身更重要。在数据可视化的结果中用图形将误差有效地显示出来,就可以提供更充分的信息。
(一)基本误差线
基本误差线(errorbar)可以通过一个Matplotlib函数创建。
fmt
是一种控制线条和点的外观的代码格式,语法与plt.plot
的缩写代码相同errorbar
有许多改善结果的选项,通过这些额外选项,可以轻松自定义误差线图形的绘画风格- 让误差线的颜色比数据点的颜色浅一点效果会很好,尤其是比较密集的图形中
- 还可以设置水平方向的误差线(xerr),单侧误差线(one-sided errorbar)及其他形式误差线
%matplotlib inline
import matplotlib.pyplot as plt
plt.style.use('seaborn-whitegrid')
import numpy as npx = np.linspace(0, 10, 50)
dy = 0.8
y = np.sin(x) + dy * np.random.randn(50)# 误差线
plt.errorbar(x, y, yerr=dy, fmt='.k')
# 自定义误差线
plt.errorbar(x, y, yerr=dy, fmt='o', color='black',ecolor='lightgray', elinewidth=3, capsize=0)
(二)连续误差
需要显示连续变量的误差,通过plt.plot
与plt.fill_between
来解决。
- matplotlib.pyplot.fill_between - Matplotlib 3.2.1 documentation
from sklearn.gaussian_process import GaussianProcessRegressor
from sklearn.gaussian_process.kernels import RBF, ConstantKernel as C# 定义模型和要画的数据
model = lambda x: x * np.sin(x)
xdata = np.array([1, 3, 5, 6, 8])
ydata = model(xdata)# 计算高斯过程拟合结果
kernel = C(1.0, (1e-3, 1e3)) * RBF(10, (1e-2, 1e2))
gp = GaussianProcessRegressor(kernel=kernel, n_restarts_optimizer=9)
gp.fit(xdata[:, np.newaxis], ydata)xfit = np.linspace(0, 10, 1000)
yfit, sigma = gp.predict(xfit[:, np.newaxis], return_std=True)
dyfit = 2 * np.sqrt(sigma) # 2*sigma~95%置信区间# 将结果可视化
plt.plot(xdata, ydata, 'or')
plt.plot(xfit, yfit, '-', color='gray')plt.fill_between(xfit, yfit - dyfit, yfit + dyfit,color='gray', alpha=0.2)
plt.xlim(0, 10)
- 从结果图形中可以直观看出高斯过程回归方法拟合的效果:在接近样本点的区域,模型受到很强的约束,拟合误差非常小,非常接近真实值,而在远离样本点的区域,模型不受约束,误差不断增大。
- 更多关于高斯过程回归方法(Gaussian process regression, GPR),参考:Gaussian Processes regression: basic introductory example [sklearn version 0.22.2]
Matplotlib 相关阅读:
[Python3] Matplotlib —— (一) 入门基础
[Python3] Matplotlib —— (二) 简易线形图
[Python3] Matplotlib —— (三) 简易散点图
总结自《Python数据科学手册》
[Python3] Matplotlib —— (四) 可视化异常处理相关推荐
- [Python3] Matplotlib —— (六) 频次直方图、数据区间划分和分布密度
文章目录 七.频次直方图.数据区间划分和分布密度 (一)简易频次直方图 (二)二维频次直方图与数据区间划分 1. plt.hist2d:二维频次直方图 2. plt.hexbin:六边形区间划分 3. ...
- Python+matplotlib数据可视化鼠标悬停自动标注功能实现
功能描述:根据已有数据绘制图形之后,鼠标进入轴内自动设置背景色,退出轴时自动恢复背景色,若鼠标移动时悬停于曲线附近,则自动弹出文本标注提示当前值. 参考代码: 运行效果(鼠标位于轴外时): 运行效果( ...
- Python使用matplotlib进行可视化时精确控制图例位置
在进行数据可视化或者科学计算可视化时,显示图例会显得很高大上,但是如果能够精确控制图例的显示位置,无疑会显得档次更高. 本文以matplotlib.pyplot可视化库为例,该模块的legend()函 ...
- Python数据科学学习笔记之——Matplotlib数据可视化
Matplotlib 数据可视化 1.Matplotlib 常用技巧 1.1.导入 Matplotlib import matplotlib as mpl import matplotlib.pypl ...
- Matplotlib 数据可视化(读书笔记)
Python 数据科学手册第四章读书笔记,仅供学习交流使用 4. Matplotlib 数据可视化 4.1 Matplotlib 常用技巧 4.1.1 导入 Matplotlib plt 是最常用的接 ...
- 数据科学与python语言——Matplotlib数据可视化基础
Matplotlib数据可视化基础 一.读取数据与数据处理阶段 1.提取指定行中的数据 2.得到>指定数值的数据 3.得到=指定值得数据 4.整体的数据处理: 二.画图函数 1.plt.subp ...
- [转载] Python数据分析之Matplotlib数据可视化实例
参考链接: 使用Python进行数据分析和可视化2 Matplotlib数据可视化的应用实例 分析 :2000至2017年各季度国民生产总值数据 npy文件--numpy专用的二进制格式 np.lo ...
- Matplotlib 常用可视化操作
Matplotlib 常用可视化操作 文章目录 Matplotlib 常用可视化操作 0. matplotlib 介绍 1. 简单辅助线 2. 坐标轴设置 用figure() 函数创建图表 设置x轴 ...
- Python3 matplotlib+numpy画函数图像
Python3 matplotlib+numpy画函数图像 matplotlib和numpy是python强大的第三方库之二.numpy内置了很多数学函数,而matplotlib则可以用于绘制图像,常 ...
最新文章
- 有了它,AI甚至可以让你知道对方是否真的爱你?
- hive同时不包含一些字符串_Hive中常用的字符串操作
- 数据库单表数据过亿_最受欢迎的三大数据库,你用过吗?
- 别顾着学习工作,没了生活
- B+树检索的时间复杂度
- 【读书笔记】iOS-ARC-Xcode检测循环引用
- Spring-JdbcTemplate基本使用
- python区域增长_Python – 有效地为高密度区域创建密度图,稀疏区域的点
- python数据库操作sqlite_Python操作mysql和sqlite
- Rust: Vec用法及其它
- 【UVA11059】Maximum Product(set+set默认从大到小排列---水题)
- 欧姆龙rxd指令讲解_欧姆龙cp1h常用指令学习(四)串口无协议读写指令TXD,RXD...
- C语言各数据类型所占内存空间大小
- Verilog时钟n分频
- Tomcat服务器 和 HTTP协议
- 计算机网络ip 地址怎么查询系统,怎么查看电脑的ip地址_查看ip地址命令介绍 - 驱动管家...
- 局域网内通过ip获取主机名
- Centos7卸载自带的OpenJDK
- Mysql 多表联合更新
- 服务器读取excel文件,关于c#:作为服务器进程读取Excel文件