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

如何在SAS SGPLOT中自定义X轴仅显示指定分类?

解决SGPLOT X轴仅显示特定分类指标的方案

以下是两种可行的代码方案,可根据你的实际需求选择:

方法1:直接指定X轴要显示的特定取值

通过在xaxis语句中添加values参数,明确列出你需要展示的rq_pt取值,未列出的取值仍会参与绘图,但不会在X轴显示标签。

修改后的完整代码:

proc sgplot data=via05;
    xaxis label = "" values=("特定值1" "特定值3" "特定值10"); /* 替换为你需要显示的实际取值,数值型则去掉引号 */
    yaxis label = "";

    styleattrs
        dataconstrastcolors = (black red blue skyblue orange green gray); /* 修正原代码的grig拼写错误为gray */

    series x=rq_pt y=count_time / datalabel
        group=gro lineattrs=(thickness=3)
        grouplp=grouplinepattern;
run;

方法2:自定义格式隐藏不需要的X轴标签

如果需要批量隐藏大部分标签,可通过自定义格式将不需要显示的取值设为空字符串,仅保留目标取值的标签。

步骤1:创建自定义格式

proc format;
    value rq_pt_fmt
        "特定值1" = "特定值1"
        "特定值5" = "特定值5"
        "特定值20" = "特定值20" /* 列出所有需要显示的取值 */
        other = ""; /* 其他取值标签设为空 */
run;

如果rq_pt是数值型,去掉引号即可:

proc format;
    value rq_pt_fmt
        1 = "1"
        5 = "5"
        20 = "20"
        other = "";
run;

步骤2:在SGPLOT中应用格式

proc sgplot data=via05;
    format rq_pt rq_pt_fmt.; /* 应用自定义格式 */
    xaxis label = "";
    yaxis label = "";

    styleattrs
        dataconstrastcolors = (black red blue skyblue orange green gray);

    series x=rq_pt y=count_time / datalabel
        group=gro lineattrs=(thickness=3)
        grouplp=grouplinepattern;
run;

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 22:37:41