python matplotlib.axes相关属性设置(绘图方式、坐标轴、坐标刻度、文本等)
程序员文章站
2022-03-21 10:32:11
...
python matplotlib.axes相关属性设置(绘图方式、坐标轴、坐标刻度、文本等)
最近在学习python 绘图时,常常使用到这样一个类:matplotlib.axes
其继承关系如下:
为什么要用 ax ,而不是 plt 呢?
因为在绘制子图过程中,对于每一个子图的不同设置,ax 可以直接实现对于单个子图的设定,因此掌握必要的 ax 设置命令尤为重要!
参数传递,返回新的 AXES 对象:
matplotlib.axes.Axes(fig,rect,*,facecolor = None,frameon = True,sharex = None,sharey = None,label = ‘’,xscale = None,yscale = None,box_aspect = None,** kwargs)
以下,总结了一些 ax 的常用方式:
一、绘图
1、基本
Axes.plot 将y对x绘制为线条或标记。
Axes.errorbar 将y与x绘制为带有错误栏的线和/或标记。
Axes.scatter y与y的散点图
Axes.plot_date 绘制强制轴以将浮点数视为日期的图。
Axes.step 绘制一个阶梯图。
Axes.loglog 在x轴和y轴上使用对数缩放绘制图。
Axes.semilogx 在x轴上绘制具有对数比例的图。
Axes.semilogy 用y轴上的对数比例绘制图。
Axes.fill_between 填充两条水平曲线之间的区域。
Axes.fill_betweenx 填充两条垂直曲线之间的区域。
Axes.bar 绘制条形图。
Axes.barh 绘制水平条形图。
Axes.bar_label 标记条形图。
Axes.stem 创建一个茎图。
Axes.eventplot 在给定位置绘制相同的平行线。
Axes.pie 绘制饼图。
Axes.stackplot 绘制堆积面积图。
Axes.broken_barh 绘制矩形的水平序列。
Axes.vlines 在每个x上绘制从ymin到ymax的垂直线。
Axes.hlines 在从xmin到xmax的每个y上绘制水平线。
Axes.fill 绘制填充的多边形。
2、跨度,光谱,填充,2D数组。
Axes.axhline 在轴上添加一条水平线。
Axes.axhspan 在轴上添加水平跨度(矩形)。
Axes.axvline 在轴上添加一条垂直线。
Axes.axvspan 在轴上添加垂直跨度(矩形)。
Axes.axline 添加无限长的直线。
Axes.acorr 绘制x的自相关。
Axes.angle_spectrum 绘制角度光谱。
Axes.cohere 绘制x和y之间的相干性。
Axes.csd 绘制交叉光谱密度。
Axes.magnitude_spectrum 绘制幅度谱。
Axes.phase_spectrum 绘制相位谱。
Axes.psd 绘制功率谱密度。
Axes.specgram 绘制频谱图。
Axes.xcorr 绘制x和y之间的互相关。
Axes.clabel 标注等高线图。
Axes.contour 绘制轮廓线。
Axes.contourf 绘制填充轮廓。
Axes.imshow 将数据显示为图像,即在2D常规栅格上。
Axes.matshow 将2D矩阵或数组的值绘制为颜色编码的图像。
Axes.pcolor 创建具有非规则矩形网格的伪彩色图。
Axes.pcolorfast 创建具有非规则矩形网格的伪彩色图。
Axes.pcolormesh 创建具有非规则矩形网格的伪彩色图。
Axes.spy 绘制2D阵列的稀疏模式。
二、坐标轴
1、外部
Axes.axis 获取或设置某些轴属性的便捷方法。
Axes.set_axis_off 关闭x和y轴。
Axes.set_axis_on 开启x和y轴。
Axes.set_frame_on 设置是否绘制轴矩形补丁。
Axes.get_frame_on 获取是否绘制了轴矩形补丁。
Axes.set_axisbelow 设置轴刻度线和网格线是在图上方还是下方。
Axes.get_axisbelow 获取轴刻度和网格线是在图上方还是下方。
Axes.grid 增加网格线。
Axes.get_facecolor 获取轴的表面色。
Axes.set_facecolor 设置轴的表面色。
2、轴的范围、方向、标签、标题、图例
Axes.invert_xaxis 反转x轴。
Axes.xaxis_inverted 返回x轴是否沿“反”方向定向。
Axes.invert_yaxis 反转y轴。
Axes.yaxis_inverted 返回y轴是否沿“反”方向定向。
Axes.set_xlim 设置x轴范围。
Axes.get_xlim 返回x轴范围。
Axes.set_ylim 设置y轴范围。
Axes.get_ylim 返回y轴范围。
Axes.set_xbound 设置x轴的上下边界。
Axes.get_xbound 以递增顺序返回x轴的上下边界。
Axes.set_ybound 设置y轴的上下边界。
Axes.get_ybound 以递增顺序返回y轴的上下边界。
Axes.set_xlabel 设置x轴的标签。
Axes.get_xlabel 获取xlabel文本字符串。
Axes.set_ylabel 设置y轴的标签。
Axes.get_ylabel 获取ylabel文本字符串。
Axes.set_title 为轴设置标题。
Axes.get_title 获取轴标题。
Axes.legend 在轴上放置一个图例。
Axes.get_legend 返回Legend实例,如果未定义图例,则返回None。
Axes.get_legend_handles_labels 返回图例的句柄和标签
Axes.set_xscale 设置x轴比例。
Axes.get_xscale 返回xaxis的比例尺(以str表示)。
Axes.set_yscale 设置y轴比例。
Axes.get_yscale 返回yaxis的比例尺(以str表示)。
Axes.set_xticks 设置xaxis的刻度位置。
Axes.get_xticks 返回数据坐标中xaxis的刻度位置。
Axes.set_xticklabels 使用字符串标签列表设置xaxis的标签。
Axes.get_xticklabels 获取xaxis的刻度标签。
Axes.get_xmajorticklabels 返回xaxis的主要刻度标签,作为的列表Text。
Axes.get_xminorticklabels 返回xaxis的次刻度标签,作为的列表Text。
Axes.get_xgridlines 返回xaxis的网格线作为Line2Ds的列表。
Axes.get_xticklines 以x的列表形式返回xaxis的刻度线Line2D。
Axes.xaxis_date 设置轴刻度和标签,以将沿x轴的数据视为日期。
Axes.set_yticks 设置yaxis的刻度位置。
Axes.get_yticks 返回数据坐标中yaxis的刻度位置。
Axes.set_yticklabels 使用字符串标签列表设置yaxis标签。
Axes.get_yticklabels 获取yaxis的刻度标签。
Axes.get_ymajorticklabels 返回yaxis的主要刻度标签,作为的列表Text。
Axes.get_yminorticklabels 返回yaxis的次要刻度标签,作为的列表Text。
Axes.get_ygridlines 返回yaxis的网格线作为Line2Ds的列表。
Axes.get_yticklines 返回yaxis的刻度线作为Line2Ds的列表。
Axes.yaxis_date 设置轴刻度和标签,以将沿y轴的数据视为日期。
Axes.minorticks_off 去除轴上的细小滴答声。
Axes.minorticks_on 在轴上显示较小的刻度。
Axes.ticklabel_format 配置ScalarFormatter默认情况下用于线性轴。
Axes.tick_params 更改刻度线,刻度线标签和网格线的外观。
三、投影
Axes.get_xaxis_transform 获取用于绘制x轴标签,刻度线和网格线的转换。
Axes.get_yaxis_transform 获取用于绘制y轴标签,刻度线和网格线的转换。
Axes.get_data_ratio 返回缩放数据的纵横比。
具体的绘制方式可见下方网址,包括其他的设定
参考自:https://matplotlib.org/stable/api/axes_api.html#axis-limits