>>> 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属性的特殊之处在于,它不会更改标记外观的任何内容,但会定义转换应独立操作的其他数据子集。