Python PyX plot:更改轴刻度文本颜色

Posted

技术标签:

【中文标题】Python PyX plot:更改轴刻度文本颜色【英文标题】:Python PyX plot: change axes tick text color 【发布时间】:2018-05-25 10:20:59 【问题描述】:

我在 python 中的 PyX 中有绘图

 g = graph.graphxy(width=8,
              x=graph.axis.log(min=1e-1, max=1e4, title=r"$x$-axis"),
              y=graph.axis.lin(max=5, title=r"$y$-axis"))
 g.plot(graph.data.function("y(x)=tan(log(1/x))**2"))
 g.writeEPSfile("axis")

如何将刻度保持为黑色,但将刻度文本的颜色(即 y 轴上的数字 0、1、2、3、4、5)更改为白色?

或者,甚至更好。如何删除刻度文本(即 y 轴上的数字 0、1、2、3、4、5)但保留刻度?

【问题讨论】:

【参考方案1】:

要在绘制标签时更改文本样式,您需要将 labelattrs 传递给画家:

painter=graph.axis.painter.regular(labelattrs=[color.grey.white])

由于所有轴(通常)都使用常规绘制器,因此此代码/设置可以同时传递给线性轴和对数轴。

画家也可以用来禁用标签。您可以将 labelattrs 设置为 None,这将跳过绘制标签。这很好,并且在构建轴的过程中发生得相当晚。另一种选择是传递一个非默认部分来禁用/更改自动轴刻度和标签的创建。在这里,再次将 None 传递给标签设置会禁用标签。但是,要使此类代码正常工作,您需要对线性轴和对数轴进行不同的设置,因为它们使用不同的轴部件。所以设置painter的labelattrs当然是最简单的,尽管它有点快和脏。

【讨论】:

以上是关于Python PyX plot:更改轴刻度文本颜色的主要内容,如果未能解决你的问题,请参考以下文章

如何更改 plot.zoo 图中的(数量)x 轴刻度? (轴()失败)

在 QWT Plot 中更改轴刻度和标签以在毫米和英寸之间切换

Python设置matplotlib.plot的坐标轴刻度间隔以及刻度范围

用Python设置matplotlib.plot的坐标轴刻度间隔以及刻度范围

在 Plotly Python 中移动 x 轴和 y 轴刻度

Python Plotly:百分比轴格式化程序