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的坐标轴刻度间隔以及刻度范围