C***l 发帖数: 2625 | 1 现在有这么一个问题,我们在不同时间点测量若干个研究对象的数据点,即每个时间点
有若干数据,现在要画其中几个时间点上的boxplot,比如,40分钟的数据画一个,80
分钟的话一个,120分钟的画一个,240分钟画一个。可是,用plot或者boxplot功能画
的话,R就自动按照factor的次序排序了,也就是说四个并排的boxplot,第一个是120
分钟的,第二个240分钟,第三个是40,第四个是80分钟,没有按时间先后排。另外,
缺省设置里面只标出了Q1, Q3和median,不能显示mean。请问如何让这些boxplot按照
时间排列,并显示mean?如果能把mean的数值标出就更好。
SAS倒是能满足这些功能,可是SAS画出来的图太难看,老板坚决要用别的办法。图明天
就要搞出来,大伙请给点意见。 |
s*******g 发帖数: 3332 | 2 小叶子展现魅力的机会又来了
80
120
【在 C***l 的大作中提到】 : 现在有这么一个问题,我们在不同时间点测量若干个研究对象的数据点,即每个时间点 : 有若干数据,现在要画其中几个时间点上的boxplot,比如,40分钟的数据画一个,80 : 分钟的话一个,120分钟的画一个,240分钟画一个。可是,用plot或者boxplot功能画 : 的话,R就自动按照factor的次序排序了,也就是说四个并排的boxplot,第一个是120 : 分钟的,第二个240分钟,第三个是40,第四个是80分钟,没有按时间先后排。另外, : 缺省设置里面只标出了Q1, Q3和median,不能显示mean。请问如何让这些boxplot按照 : 时间排列,并显示mean?如果能把mean的数值标出就更好。 : SAS倒是能满足这些功能,可是SAS画出来的图太难看,老板坚决要用别的办法。图明天 : 就要搞出来,大伙请给点意见。
|
C***l 发帖数: 2625 | 3 好像你也是生捅的啊?
【在 s*******g 的大作中提到】 : 小叶子展现魅力的机会又来了 : : 80 : 120
|
s*******g 发帖数: 3332 | 4 如果是就好了。。。
【在 C***l 的大作中提到】 : 好像你也是生捅的啊?
|
l***a 发帖数: 12410 | 5 not familiar with R, but can you change data format to get what you want? e.
g. change 40 to 1)40, 80 to 2)80, etc...
80
120
【在 C***l 的大作中提到】 : 现在有这么一个问题,我们在不同时间点测量若干个研究对象的数据点,即每个时间点 : 有若干数据,现在要画其中几个时间点上的boxplot,比如,40分钟的数据画一个,80 : 分钟的话一个,120分钟的画一个,240分钟画一个。可是,用plot或者boxplot功能画 : 的话,R就自动按照factor的次序排序了,也就是说四个并排的boxplot,第一个是120 : 分钟的,第二个240分钟,第三个是40,第四个是80分钟,没有按时间先后排。另外, : 缺省设置里面只标出了Q1, Q3和median,不能显示mean。请问如何让这些boxplot按照 : 时间排列,并显示mean?如果能把mean的数值标出就更好。 : SAS倒是能满足这些功能,可是SAS画出来的图太难看,老板坚决要用别的办法。图明天 : 就要搞出来,大伙请给点意见。
|
C***l 发帖数: 2625 | 6 这个,老板不让。x轴的标记必须是40min 80min 120min 240min etc.
e.
【在 l***a 的大作中提到】 : not familiar with R, but can you change data format to get what you want? e. : g. change 40 to 1)40, 80 to 2)80, etc... : : 80 : 120
|
l***a 发帖数: 12410 | 7 how does R handle leading blanks?
【在 C***l 的大作中提到】 : 这个,老板不让。x轴的标记必须是40min 80min 120min 240min etc. : : e.
|
s**********s 发帖数: 7387 | 8 factor里面也可以调整order吧。
80
120
【在 C***l 的大作中提到】 : 现在有这么一个问题,我们在不同时间点测量若干个研究对象的数据点,即每个时间点 : 有若干数据,现在要画其中几个时间点上的boxplot,比如,40分钟的数据画一个,80 : 分钟的话一个,120分钟的画一个,240分钟画一个。可是,用plot或者boxplot功能画 : 的话,R就自动按照factor的次序排序了,也就是说四个并排的boxplot,第一个是120 : 分钟的,第二个240分钟,第三个是40,第四个是80分钟,没有按时间先后排。另外, : 缺省设置里面只标出了Q1, Q3和median,不能显示mean。请问如何让这些boxplot按照 : 时间排列,并显示mean?如果能把mean的数值标出就更好。 : SAS倒是能满足这些功能,可是SAS画出来的图太难看,老板坚决要用别的办法。图明天 : 就要搞出来,大伙请给点意见。
|
C***l 发帖数: 2625 | 9 怎么调呢?
【在 s**********s 的大作中提到】 : factor里面也可以调整order吧。 : : 80 : 120
|
C***l 发帖数: 2625 | 10 不太清楚,但是要调顺序的不是一个两个,所以一个空格不能解决全部问题
【在 l***a 的大作中提到】 : how does R handle leading blanks?
|
|
|
s*******g 发帖数: 3332 | 11 让小叶子给你调,然后给他挂个名,恩,很和谐
【在 C***l 的大作中提到】 : 怎么调呢?
|
s**********s 发帖数: 7387 | 12 depending on your rawdata format
if you can do it like
data time
1.5 10min
1.3 10min
4.2 20min
1.2 40min
...
..
things will be much easier
i'd say pre-parse your data with perl and then feed it into R.
【在 C***l 的大作中提到】 : 怎么调呢?
|
s**********s 发帖数: 7387 | 13 guess i really don't need more papers and the headache associated with them.
...
【在 s*******g 的大作中提到】 : 让小叶子给你调,然后给他挂个名,恩,很和谐
|
g********r 发帖数: 8017 | 14 自己些个小循环,生成一个list,顺序随你怎么排。boxplot那个list。
画mean就不知到了。
80
120
【在 C***l 的大作中提到】 : 现在有这么一个问题,我们在不同时间点测量若干个研究对象的数据点,即每个时间点 : 有若干数据,现在要画其中几个时间点上的boxplot,比如,40分钟的数据画一个,80 : 分钟的话一个,120分钟的画一个,240分钟画一个。可是,用plot或者boxplot功能画 : 的话,R就自动按照factor的次序排序了,也就是说四个并排的boxplot,第一个是120 : 分钟的,第二个240分钟,第三个是40,第四个是80分钟,没有按时间先后排。另外, : 缺省设置里面只标出了Q1, Q3和median,不能显示mean。请问如何让这些boxplot按照 : 时间排列,并显示mean?如果能把mean的数值标出就更好。 : SAS倒是能满足这些功能,可是SAS画出来的图太难看,老板坚决要用别的办法。图明天 : 就要搞出来,大伙请给点意见。
|
g********r 发帖数: 8017 | 15 哦,画mean可以写个循环,用lines()在指定位置画线段画出来。
【在 g********r 的大作中提到】 : 自己些个小循环,生成一个list,顺序随你怎么排。boxplot那个list。 : 画mean就不知到了。 : : 80 : 120
|
g********r 发帖数: 8017 | 16 话说这么多生统的兄弟,有没有人计划JSM组团外拍呀? |
C***l 发帖数: 2625 | 17 though i don't quite understand this process, I got it figured out through
another person's hint on levels().
Thanks anyway~
【在 s**********s 的大作中提到】 : depending on your rawdata format : if you can do it like : data time : 1.5 10min : 1.3 10min : 4.2 20min : 1.2 40min : ... : .. : things will be much easier
|
C***l 发帖数: 2625 | 18 用levels()解决了,list具体怎么做?
【在 g********r 的大作中提到】 : 自己些个小循环,生成一个list,顺序随你怎么排。boxplot那个list。 : 画mean就不知到了。 : : 80 : 120
|
C***l 发帖数: 2625 | 19 I used points() to make means as a dot at the center of the box. thanks!
【在 g********r 的大作中提到】 : 哦,画mean可以写个循环,用lines()在指定位置画线段画出来。
|
g********r 发帖数: 8017 | 20 就是写个for loop,赋予每个list的item原始数据里面相应于某个时间点的那些值。用
list的好处是可以插入空item任意调整各个box之间的距离。还可以留出空间来插入文
字。不过比levels麻烦多了。
【在 C***l 的大作中提到】 : 用levels()解决了,list具体怎么做?
|
b******a 发帖数: 1470 | 21
80
120
##产生数据####
a<-rnorm(10)
b<-rnorm(10)
c<-rnorm(10)
d<-rnorm(10)
##画图, 坐标轴忽略##
boxplot(a,b,c,d,axes=FALSE)
#放置你需要的横轴坐标#
axis(1,1:4,c(120,220,320,420))
#默认纵轴#
axis(2)
#####
box()
#画均值, 画线很麻烦#
points(1,mean(a),col=2)
points(2,mean(b),col=2)
points(3,mean(c),col=2)
points(4,mean(d),col=2)
希望能抛砖引玉
【在 C***l 的大作中提到】 : 现在有这么一个问题,我们在不同时间点测量若干个研究对象的数据点,即每个时间点 : 有若干数据,现在要画其中几个时间点上的boxplot,比如,40分钟的数据画一个,80 : 分钟的话一个,120分钟的画一个,240分钟画一个。可是,用plot或者boxplot功能画 : 的话,R就自动按照factor的次序排序了,也就是说四个并排的boxplot,第一个是120 : 分钟的,第二个240分钟,第三个是40,第四个是80分钟,没有按时间先后排。另外, : 缺省设置里面只标出了Q1, Q3和median,不能显示mean。请问如何让这些boxplot按照 : 时间排列,并显示mean?如果能把mean的数值标出就更好。 : SAS倒是能满足这些功能,可是SAS画出来的图太难看,老板坚决要用别的办法。图明天 : 就要搞出来,大伙请给点意见。
|
N**D 发帖数: 10322 | 22 gnuplot
80
120
【在 C***l 的大作中提到】 : 现在有这么一个问题,我们在不同时间点测量若干个研究对象的数据点,即每个时间点 : 有若干数据,现在要画其中几个时间点上的boxplot,比如,40分钟的数据画一个,80 : 分钟的话一个,120分钟的画一个,240分钟画一个。可是,用plot或者boxplot功能画 : 的话,R就自动按照factor的次序排序了,也就是说四个并排的boxplot,第一个是120 : 分钟的,第二个240分钟,第三个是40,第四个是80分钟,没有按时间先后排。另外, : 缺省设置里面只标出了Q1, Q3和median,不能显示mean。请问如何让这些boxplot按照 : 时间排列,并显示mean?如果能把mean的数值标出就更好。 : SAS倒是能满足这些功能,可是SAS画出来的图太难看,老板坚决要用别的办法。图明天 : 就要搞出来,大伙请给点意见。
|