>>> from env_helper import info; info()
页面更新时间: 2024-01-06 20:44:56
运行环境:
Linux发行版本: Debian GNU/Linux 12 (bookworm)
操作系统内核: Linux-6.1.0-16-amd64-x86_64-with-glibc2.36
Python版本: 3.11.2
5.5. 标记对象的属性¶
5.5.1. 协调属性¶
X y xmin xmax ymin ymax¶
坐标属性确定在绘图上绘制标记的位置。通常,x
坐标是水平位置,y
坐标是垂直位置。有些标记接受一个或两个变量的跨度(即min
、max
)参数化。其他可能接受x
和y
,但也使用baseline
参数来显示跨度。图层的orient
参数决定了它是如何工作的。
如果变量不包含数值数据,则其比例将应用转换,以便可以在屏幕上绘制数据。例如,Nominal
刻度为每个不同的类别分配一个整数索引,刻度将日期表示日期为参考“纪元”的天数:
Continuous
比例还可以在数据值和空间位置之间应用非线性变换:
5.5.2. 颜色属性¶
颜色、填充色、边缘色¶
所有标记都可以被赋予color
,并且许多标记可以区分标记的“边缘”和“填充”的颜色。通常,简单地使用color
将同时设置两者,而更具体的属性允许进一步控制:
映射 color 属性时,默认调色板取决于比例的类型。标称比例尺使用离散的、无序的色调,而连续比例尺(包括时间比例尺)使用顺序渐变:
注意
默认的连续比例可能会在将来的版本中进行更改,以提高可区分性。
色阶由调色板的名称参数化,如'viridis'
、'rocket'
或'deep'
。一些调色板名称可以包含参数,包括简单的渐变(例如:'dark:blue'
)或立方螺旋系统(例如:'ch:start=.2,rot=-.4'
)。请参阅调色板教程,了解如何做出适当的选择。
连续比例也可以通过比例应在其中插值的颜色元组进行参数化。使用标称比例时,可以提供调色板的名称(如有必要,将进行离散采样)、单个颜色值的列表或直接将数据值映射到颜色的字典。
可以以多种格式指定单个颜色。其中包括对当前颜色周期
('C0'
)、单字母速记 ('b'
)、灰度值
('.4'
)、RGB 十六进制代码 ('#4c72b0'
)、X11 颜色名称
('seagreen'
) 和 XKCD 颜色调查名称 ('purpleish'
)
的索引引用:
alpha, fillalpha, edgealpha¶
alpha
属性确定标记的不透明度。在过度绘制的情况下,降低 alpha
有助于表示密度:
即使标记不重叠,映射属性也很有用,因为它传达了一种重要性感,并且可以与color
刻度组合来表示两个变量。此外,alpha
较低的颜色看起来饱和度较低,这可以改善较大填充标记(如条形)的外观。
与color
一样,某些标记定义了单独的edgealpha
和fillalpha
属性以进行其他控制。
5.5.3. 样式属性¶
fill¶
fill
该属性与区分边缘和内部的标记相关,并确定内部是否可见。它是一个布尔状态:fill
只能设置为
True
或 False
:
marker¶
marker
属性与点标记和某些线标记相关。用于指定标记的 API
非常灵活,详见 matplotlib API
文档:matplotlib.markers
(https://matplotlib.org/stable/api/markers_api.html#module-matplotlib.markers)
可以使用许多简单的字符串代码来指定标记:
它们也可以使用(num_sides, fill_style, angle)
元组以编程方式生成:
有关其他格式,包括 mathtex 字符代码 ('$...$'
)
和顶点数组,请参阅 matplotlib 文档。
标记属性始终使用标称比例进行映射;不同的形状没有固有的顺序。如果未提供比例,则绘图将以编程方式生成一组适当大的唯一标记:
虽然这确保了形状在技术上是不同的,但请记住,在大多数情况下,如果在单个图中使用多个标记,则很难区分标记。
注意
默认标记量表可能会在将来的版本中更改,以提高可区分性。
linestyle, edgestyle¶
linestyle
属性与线标记相关,并且edgestyle
属性与许多带有“边缘”的标记相关。这两个属性都根据开关段确定线条的“虚线”。linestyleedgestyle
可以使用少量速记代码('-'
、 '--'
、 '-.'
和
':'
)指定破折号,也可以使用(on, off, ...)
元组以编程方式指定破折号。在元组规范中,单位等于线宽:
5.5.4. 大小属性¶
pointsize¶
pointsize
属性与点标记和线标记相关,这些标记可以在各个数据点显示标记。单位对应于标记的直径(以磅为单位)。
请注意,虽然参数化对应于直径,但比例将通过平方根变换应用,以便数据值与面积成线性比例:
linewidth¶
linewidth
属性与线标记相关,并确定其粗细。该值应为非负数,并具有点单位:
edgewidth¶
edgewidth
属性类似于但适用于linewidth
带有边缘/填充的标记,而不是线条。在刻度中使用时,它还具有不同的默认范围。单位相同:
stroke¶
stroke
属性类似于edgewidth
,但当点标记由其描边而不是填充定义时适用。它的默认缩放范围也略有不同,但在其他方面表现类似:
5.5.5. 文本属性¶
halign, valign¶
halign
和valign
属性控制文本标记的水平和垂直对齐。水平对齐的选项有'left'
、'right'
和'center'
,而垂直对齐的选项有'top'
、'bottom'
、'center'
、'baseline'
和'center_baseline'
。
fontsize¶
fontsize
属性控制文本标记的大小。该值具有点单位:
offset¶
offset
属性控制文本标记与其定位点位置之间的间距。它适用于不使用center
对齐方式的情况(即,使用左/右或上/下时)。该值具有点单位。
5.5.6. 其他特性¶
text¶
text
属性用于设置文本标记的内容。它总是从字面上使用(不映射),并在必要时强制转换为字符串。
group¶
group
属性的特殊之处在于,它不会更改标记外观的任何内容,但会定义转换应独立操作的其他数据子集。