The 2019 SciPy John Hunter Excellence in Plotting Contest is accepting submissions until June 8th!
Version 3.0.3
matplotlib
Fork me on GitHub

Table of Contents

Pyplot函数概述

pyplot  matplotlib.pyplot 是Matplotlib的基于状态的接口。
matplotlib.pyplot.plotting()[源代码]
功能 描述
acorr 绘制的自相关 x .
angle_spectrum 绘制角度谱。
annotate 注释该点 xy 带文字 s .
arrow 向轴添加箭头。
autoscale 将轴视图自动缩放为数据(切换)。
axes 将轴添加到当前图形并使其成为当前轴。
axhline 在轴上添加一条水平线。
axhspan 在轴上添加水平跨距(矩形)。
axis 获取或设置某些轴属性的方便方法。
axvline 在轴上添加一条垂直线。
axvspan 在轴上添加一个垂直跨度(矩形)。
bar 绘制条形图。
barbs 绘制二维倒钩图。
barh 绘制水平条形图。
box 在当前轴上打开或关闭轴框。
boxplot 制作一个盒子和胡须图。
broken_barh 绘制水平矩形序列。
cla 清除当前轴。
clabel 标记轮廓图。
clf 清除当前数字。
clim 设置当前图像的颜色限制。
close 关闭图形窗口。
cohere 绘制 xy .
colorbar 在绘图中添加颜色条。
contour 绘制等高线。
contourf 绘制等高线。
csd 绘制交叉光谱密度。
delaxes 移除 Axes ax (默认为当前轴)。
draw 重新绘制当前图形。
errorbar 将Y和X绘制为带有附加误差线的直线和/或标记。
eventplot 在给定位置绘制相同的平行线。
figimage 将未重新采样的图像添加到图中。
figlegend 在图形中放置图例。
fignum_exists 返回具有给定ID的图形是否存在。
figtext 将文本添加到图中。
figure 创建新图形。
fill 绘制填充多边形。
fill_between 填充两条水平曲线之间的区域。
fill_betweenx 填充两条垂直曲线之间的区域。
findobj 查找艺术家对象。
gca 得到电流 Axes 当前图形上与给定关键字参数匹配的实例,或创建一个。
gcf 获取对当前图形的引用。
gci 获取当前的着色艺术家。
get_figlabels 返回现有图形标签的列表。
get_fignums 返回现有数字的列表。
grid 配置网格线。
hexbin 做一个六角形的料位图。
hist 绘制柱状图。
hist2d 绘制二维柱状图。
hlines 在每个位置绘制水平线 yxminxmax .
imread 将文件中的图像读取到数组中。
imsave 将数组另存为图像文件。
imshow 显示图像,即
install_repl_displayhook 安装一个repl显示挂钩,以便在控件返回repl时自动重新绘制任何过时的图形。
ioff 关闭交互模式。
ion 打开交互模式。
isinteractive 返回交互模式的状态。
legend 在轴上放置图例。
locator_params 控制勾号定位器的行为。
loglog 在X轴和Y轴上绘制对数比例图。
magnitude_spectrum 绘制幅度谱。
margins 设置或检索自动调整页边距。
matshow 在新的图形窗口中将数组显示为矩阵。
minorticks_off 从轴上删除次要刻度。
minorticks_on 在轴上显示小刻度。
pause 暂停 间隔 秒。
pcolor 使用非规则矩形网格创建伪彩色绘图。
pcolormesh 使用非规则矩形网格创建伪彩色绘图。
phase_spectrum 绘制相位谱。
pie 绘制饼图。
plot 绘制Y和X作为直线和/或标记。
plot_date 包含日期的绘图数据。
plotfile 在文件中绘制数据。
polar 绘制极坐标图。
psd 绘制功率谱密度。
quiver 绘制一个二维箭头字段。
quiverkey 在震动图中添加一个键。
rc 设置当前的rc参数。
rc_context 返回用于管理RC设置的上下文管理器。
rcdefaults 从matplotlib的内部默认样式恢复rc参数。
rgrids 获取或设置当前极坐标图上的径向网格线。
savefig 保存当前图形。
sca 将当前轴实例设置为 ax .
scatter 散点图 y VS x 标记大小和/或颜色不同。
sci 设置当前图像。
semilogx 在X轴上绘制对数比例图。
semilogy 在Y轴上绘制对数比例图。
set_cmap 设置默认颜色映射。
setp 在艺术家对象上设置属性。
show 显示数字。
specgram 绘制光谱图。
spy 绘制二维数组的稀疏模式。
stackplot 绘制堆积面积图。
stem 创建一个茎图。
step 绘制一个步进图。
streamplot 绘制矢量流的流线。
subplot 在当前图形中添加子批次。
subplot2grid 在规则网格内的特定位置创建轴。
subplot_tool 启动图的子批次工具窗口。
subplots 创建一个数字和一组子批次。
subplots_adjust 调整子批次布局。
suptitle 在图形中添加居中的标题。
switch_backend 关闭所有打开的图形并设置matplotlib后端。
table 将表格添加到当前轴。
text 将文本添加到轴。
thetagrids 获取或设置当前极坐标图上的theta网格线。
tick_params 更改刻度线、刻度标签和网格线的外观。
ticklabel_format 改变 ScalarFormatter 默认情况下用于线性轴。
tight_layout 自动调整子批次参数以提供指定的填充。
title 为轴设置标题。
tricontour 在非结构化三角形网格上绘制轮廓。
tricontourf 在非结构化三角形网格上绘制轮廓。
tripcolor 创建一个非结构化三角形网格的伪彩色图。
triplot 绘制一个非结构化的三角形网格作为线条和/或标记。
twinx 制作共享的第二个轴 x 轴。
twiny 制作共享的第二个轴 y 轴。
uninstall_repl_displayhook 卸载Matplotlib显示挂钩。
violinplot 画出小提琴的情节。
vlines 绘制垂直线。
xcorr 绘制 xy .
xkcd 打开 xkcd 草图样式绘制模式。
xlabel 设置X轴的标签。
xlim 获取或设置当前轴的X限制。
xscale 设置X轴比例。
xticks 获取或设置X轴的当前刻度位置和标签。
ylabel 设置Y轴的标签。
ylim 获取或设置当前轴的Y限制。
yscale 设置Y轴比例。
yticks 获取或设置Y轴的当前刻度位置和标签。

Matplotlib中的颜色

有许多颜色映射可用于将数据映射到颜色值。下面我们列出了几种在matplotlib中使用颜色的方法。

要更深入地了解颜色映射,请参见 在Matplotlib中选择颜色映射 辅导的。

matplotlib.pyplot.colormaps()[源代码]

Matplotlib提供了许多颜色映射,其他颜色映射可以使用 register_cmap() . 此函数记录内置的颜色映射,如果调用它,还将返回所有已注册的颜色映射的列表。

可以使用关键字参数设置图像、颜色、散点图等的颜色映射:

imshow(X, cmap=cm.hot)

或使用 set_cmap() 功能:

imshow(X)
pyplot.set_cmap('hot')
pyplot.set_cmap('jet')

在交互模式下, set_cmap() 将更新颜色映射post hoc,允许您查看哪一个最适合您的数据。

所有内置的颜色映射都可以通过附加 _r 例如, gray_r 与…相反 gray .

可视化中使用了几种常见的颜色方案:

顺序方案
对于从低到高的单极数据
分流方案
对于强调正负偏离中心值的双极数据
循环格式
用于绘制在端点处环绕的值,例如相位角、风向或一天中的时间
定性方案
对于没有固有顺序的名义数据,其中颜色仅用于区分类别

Matplotlib配有4张感知均匀的彩色地图,这是为顺序数据推荐的彩色地图:

色图 描述
地狱 黑-红-黄色调一致
岩浆 黑红白的均匀色调
等离子体 蓝红黄色调均匀
绿脓杆菌属 蓝绿色和黄色的色调一致

以下颜色映射基于 ColorBrewer Cynthia Brewer开发的颜色规格和设计:

分色器(亮度在中点处最高,在不同颜色的端点处降低):

色图 描述
BRBG 棕色、白色、蓝绿色
皮伊格 粉色、白色、黄绿
PRGn 紫色、白色、绿色
PuOr 橙色、白色、紫色
RdBu 红、白、蓝
RdGy 红色、白色、灰色
RdYlBu 红、黄、蓝
RdYlGn 红、黄、绿
Spectral 红色、橙色、黄色、绿色、蓝色

彩色啤酒器顺序(亮度单调降低):

色图 描述
布鲁斯 白色到深蓝色
BuGn 白色、浅蓝色、深绿色
BuPu 白色、浅蓝色、深紫色
GnBu 白色、浅绿色、深蓝色
绿色蔬菜 白到深绿
灰色的 白色到黑色(非线性)
橘子 白色、橙色、深棕色
OrRd 白色、橙色、深红色
PuBu 白色、浅紫色、深蓝色
PuBuGn 白色、浅紫色、深绿色
PuRd 白色、浅紫色、深红色
紫色 白色到深紫色
RdPu 白色、粉色、深紫色
红魔 白色到深红色
YlGn 浅黄色、深绿色
YlGnBu 浅黄色、浅绿色、深蓝色
YlOrBr 浅黄色、橙色、深棕色
YlOrRd 浅黄色、橙色、深红色

彩色啤酒定性:

(用于绘制名义数据, ListedColormap 被使用,而不是 LinearSegmentedColormap . 对于不同数量的类别,建议使用不同的颜色集。)

  • 重音
  • 黑暗2
  • 成对
  • 面糊1
  • 面糊2
  • SET1
  • SET2
  • SET3

从Matlab提供的相同名称的颜色映射中派生出的一组颜色映射也包括:

色图 描述
秋天 连续线性增加的红橙黄色调
连续递增的黑白彩色地图,带蓝色色调,以模拟X射线胶片
凉爽的 青色洋红的线性渐变
连续增加的黑铜色调
旗帜 重复的红-白-蓝-黑模式(端点不循环)
灰色 连续线性递增黑白灰度
热的 连续的黑-红-黄-白,模拟物体在升高温度下的黑体辐射。
喷气式飞机 基于NCSA的流体喷射模拟,带有深色端点的光谱图,蓝蓝-蓝-黄-红。 [1]
粉红色 连续增加的淡黑色粉白色,用于照片的棕褐色色调着色。
棱镜 重复的红黄绿蓝紫-绿模式(端点处不循环)
春天 呈线性增加的洋红色-黄色阴影
夏天 连续线性增加的绿黄色调
冬天 蓝绿色调线性增加

一组调色板 Yorick scientific visualisation package ,由David H.Munro编写的GIST软件包的演变包括:

色图 描述
gist_earth 从深蓝色海洋到绿色低地再到棕色高地再到白色山脉的地图绘制者的颜色
gist_heat 依次增加黑-红-橙-白,以模拟铁棒变热时的黑体辐射。
gist_ncar 国家大气研究中心的伪光谱黑-蓝-绿-黄-红-紫-白配色图 [2]
gist_rainbow 在完全饱和状态下,以光谱顺序从红色到紫色(如 hsv 但不是循环的)
gist_stern 交互式数据语言软件的“斯特恩特殊”颜色表

一组循环颜色图:

色图 描述
单纯疱疹病毒 红-黄-绿-青-蓝-洋红-红,通过改变hsv颜色空间中的色调成分而形成。
暮光 白色、蓝色、黑色、红色、白色的均匀色调
twilight_shifted 黑色、蓝色、白色、红色、黑色的均匀色调

其他杂项计划:

色图 描述
阿姆哈特 序贯黑橙黄白黑体光谱,常用于原子力显微镜
BRG 蓝红绿
沸水堆 分散蓝白红
冷暖 分散的蓝-灰-红,旨在避免3D阴影、色盲和颜色顺序问题。 [3]
CMRmap “彩色图像上的默认颜色映射通常会重现为混淆的灰度图像。提出的颜色映射保持了一个美观的彩色图像,自动复制到具有离散的、可量化的饱和度水平的单调灰度。” [4]
立方体螺旋线 与大多数其他配色方案不同,Cubehelix是由D.A.Green设计的,在感知亮度方面单调增加。此外,在黑白PostScript打印机上打印时,该方案会导致灰度,亮度单调增加。这个配色方案被命名为cube helix,因为生成的r、g、b值可以在r、g、b颜色立方体的对角线周围可视化为挤压螺旋线。
侏儒 Gnuplot的传统PM3D方案(黑-蓝-红-黄)
GnActht2 可打印为灰色(黑-蓝-紫-黄-白)的连续颜色
海洋 绿蓝白
彩虹 光谱紫蓝绿黄橙红分光镜
地震 分散蓝白红
nipy_spectral 黑-紫-蓝-绿-黄-红-白光谱,最初来自 Python 项目的神经影像学。
地形 地图制作者的颜色,蓝绿色黄棕色白色,最初来自igor Pro

以下颜色映射是多余的,在将来的版本中可能会被删除。建议使用描述中的名称,这样可以产生相同的输出:

色图 描述
gist_gray 相同的 gray
gist_yarg 相同的 gray_r
二元的 相同的 gray_r

脚注

[1]彩虹色地图, jet 尤其是,许多研究人员认为科学可视化是一个糟糕的选择: Rainbow Color Map (Still) Considered Harmful
[2]类似于NCAR命令语言中的“bkblaqgryeorreviwh200”。见 Color Table Gallery
[3]Diverging Color Maps for Scientific Visualization 作者:Kenneth Moreland。
[4]A Color Map for Effective Black-and-White Rendering of Color-Scale Images 凯里·拉帕波特