You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PyX柱状图轴配置问题:自定义X轴刻度与添加Y轴标签

PyX柱状图:X轴刻度筛选与Y轴标签添加解决方案

问题1:仅显示X轴部分刻度(如偶数2、4、6……)

对于nestedbar类型的X轴,可通过自定义刻度筛选规则实现只显示指定刻度。初始化X轴时,通过ticks参数传入带筛选逻辑的刻度生成器,只保留符合条件的刻度值(比如偶数)即可。

问题2:为Y轴添加轴标签

创建graphxy对象时,给Y轴指定label参数,直接传入所需的标签文本就能添加Y轴标签。

修改后的完整示例代码

import pyx
from pyx import graph

# 自定义X轴刻度:仅保留偶数刻度
def even_tick_generator(min, max, step, graphaxis):
    for val in pyx.graph.axis.tick.tick(min, max, step, graphaxis):
        if val.int() % 2 == 0:
            yield val

# 配置图形轴参数
g = graph.graphxy(
    width=8,
    x=graph.axis.nestedbar(ticks=even_tick_generator),  # 应用自定义刻度规则
    y=graph.axis.linear(label="Y轴数据")  # 设置Y轴标签
)

# 绘制柱状图
g.plot([
    graph.data.file("minimal.dat", xname="$0, 0", y=2),
    graph.data.file("minimal.dat", xname="$0, 1", y=3)
], [graph.style.bar()])

g.writeEPSfile("compare")

补充说明

  • 若需筛选其他规则的刻度,只需修改even_tick_generator中的判断条件(如筛选奇数、间隔3的数值等)。
  • Y轴标签的字体、大小等样式可通过labelattrs参数调整,例如labelattrs=[pyx.text.size.Large]。

内容的提问来源于stack exchange,提问作者Nigel1

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 13:20:04