楼主: 孤单的我们
4508 3

半对数图请指教 [推广有奖]

  • 4关注
  • 12粉丝

已卖:4份资源

教授

4%

还不是VIP/贵宾

-

威望
0
论坛币
5096 个
通用积分
1154.4122
学术水平
136 点
热心指数
159 点
信用等级
126 点
经验
33121 点
帖子
650
精华
0
在线时间
1621 小时
注册时间
2012-9-12
最后登录
2025-2-19

楼主
孤单的我们 发表于 2015-11-2 13:55:37 |AI写论文
30论坛币
先讲下数据结构。纵坐标为药物浓度concn[0-250],横坐标为时间days[0-100]。
要画半对数图,其中纵坐标浓度要用4 40 400(三者之间是等距的)。
小弟尝试用sgplot画。
yaxis type=log logbase=10 logstyle=logexpand
日志报错,查帮助选项只用于xaxis。
于是换sgpanel。生成的纵坐标是10 50 100,跟预期不符,不知怎么设置参数。
请大神帮忙解答,小弟感激不尽!
数据集
  1. proc sgpanel data=tmp;
  2.         panelby drugid /noborder novarname onepanel  START=BOTTOMLEFT;
  3.         rowaxis type=log logbase=10 logstyle=logexpand ;
  4.         series y=concn x=days/ markers lineattrs=(thickness=2 color=blue)
  5.         markerattrs=(symbol=circlefilled color=blue);
  6.         keylegend  / noborder DOWN=2 TITLE='Conc vs days'  position=right;
  7. run;
复制代码




最佳答案

johnpark1 查看完整内容

I usually use gplot. In this case I'd try the following axis definition: Axis logbase=10 order=(4 40 400). Proc gplot .... ; Plot .... / yaxis =axis1; Run;
关键词:请指教 panel data position expand marker
学习是永无止境的。

沙发
johnpark1 发表于 2015-11-2 13:55:38
I usually use gplot. In this case I'd try the following axis definition:

Axis logbase=10 order=(4 40 400).

Proc gplot .... ;
Plot .... / yaxis =axis1;
Run;

藤椅
孤单的我们 发表于 2015-11-2 14:02:43
sgplot中yaxis可以用type=log等选项,但是纵坐标仍然是10 50 100

板凳
孤单的我们 发表于 2015-11-3 15:39:11
johnpark1 发表于 2015-11-3 12:55
I usually use gplot. In this case I'd try the following axis definition:

Axis logbase=10 order=(4 ...
Thanks for your suggestion.

Actually, there is no 4*10E(0 1 2 3). SAS support logbase=10 just as (1 10 100 1000).

I try to use max=1000 in yaxis while it works.

Now here is another problem .

A graph has more than eighty group.I plot such many series but there if no space to export so many legends. Which option can solve this problem ?  

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-22 06:03