全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
8521 2
2013-01-09
有一个资料需要描绘半对数线图,请问在sas里面是怎样实现呢
复制代码
上面的程序出来的图是纵坐标是-2到6,如图,
QQ截图20130109215447.jpg

可是半对数图不是要求纵坐标是0.1,1,10,100这样的值吗?而且是没有零点的,根据其纵坐标是对数尺度,如果直接将纵坐标设为0.1,1,10,100,1000,再用原始x,y去画图,

复制代码

结果如图,
figure.jpg


两个图的趋势有那么点不同,那么从统计上来说,哪个才是正确的呢?

在线求大神解答。。。
二维码

扫码加我 拉你入群

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

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

全部回复
2013-1-9 22:59:40
妹子,应该结合你的两个思路来作图。
纵坐标是要取对数,想以0.1,1,10,100表示,你应该用函数x1=log10(x);y1=log10(y); 而不是log().

现在有两种方法供你选择:
方法1:用正确的对数函数求出x1/y1后,纵坐标应该是-1,0,1,2,3,你需要对axis1进行处理。使其分别显示0.1,1,10,100,1000即可。

方法2:不需要求对数,直接通过对坐标轴进行对数处理作图,加上如下红体字内容:
axis1 logbase=10 logstyle=expand label=(angle=90 'siwanglv'); 即可。

比较两种方法,最后的图是一样的,也是正确的图。

试试吧,花花~
if you have any question, please let me know.

二维码

扫码加我 拉你入群

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

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

2013-1-9 23:22:06
遇女心惊 发表于 2013-1-9 22:59
妹子,应该结合你的两个思路来作图。
纵坐标是要取对数,想以0.1,1,10,100表示,你应该用函数x1=log10(x); ...
强大的哥哥,灰常感谢帮忙,小妹真是佩服!学习了,私聊~~
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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