全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
572 5
2023-06-09
悬赏 100 个论坛币 已解决
sas给变量format一个信息之后,在后面把这个变量做为横坐标进行画图,画图里面默认显示的是变量的原始值,如何让坐标显示变量format的值?下图中,1 2 3 4 5是变量的原始值,format之后是1-5 6-10 10-20 20-30 30-40 ,用的是proc sgplot过程,就是怎么让横坐标显示1-5 6-10 10-20 20-30 30-40 ,而不是1 2 3 4 5,谢谢各位大佬。
图片.png

最佳答案

whymath 查看完整内容

若希望借助 SAS 的输出格式来完成,示例如下: 另外,你提到使用字符型的分组值,顺序会出错。sgplot 过程步会根据绘图变量的类型,决定是否对数据重新排序: 变量为数值型,按照从数值小到大的顺序重新排序,再绘制图形; 变量为字符型,不重新排序,按照字符变量的不同取值水平出现的顺序绘制图形; 因此,你可以让 x 轴的变量成为字符型,但是要注意预先处理好排序。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2023-6-9 09:43:47
若希望借助 SAS 的输出格式来完成,示例如下:
复制代码

另外,你提到使用字符型的分组值,顺序会出错。sgplot 过程步会根据绘图变量的类型,决定是否对数据重新排序:
变量为数值型,按照从数值小到大的顺序重新排序,再绘制图形;
变量为字符型,不重新排序,按照字符变量的不同取值水平出现的顺序绘制图形;

因此,你可以让 x 轴的变量成为字符型,但是要注意预先处理好排序。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2023-6-9 09:45:58
还有就是直接把变量设置成字符,取值1-5 6-10 10-20 20-30 30-40会导致分组求均值的时候,顺序出错
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2023-6-9 13:32:43
可以在format的值前加上数字和@符号,进行排序
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2023-6-10 00:23:21
可以用xaxis的valuesdisplay option。代码如下:
复制代码
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2023-6-14 10:20:24
linearopts=(viewmin=-1 viewmax=6 tickvaluesequence=(start=1 end=5 increment=1) tickvalueformat=group.)
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群