梯形图代码修改

时间:2014-05-03 16:50:09

标签: r plot

我正在尝试绘制梯形图,如本页所述:http://www.talkstats.com/showthread.php/6252-Ladder-plot

是否可以修改此代码以显示绘图两侧的平均误差条和标准误差条?或者,两列的箱形图可以显示在同一图上。此页面提供了一些标准错误栏代码:https://stats.stackexchange.com/questions/60767/how-to-display-error-bars-for-cross-over-paired-experiments

感谢您的帮助。

编辑: 样本配对数据如下:

paired_df = structure(list(X0 = c(9, 13, 13, 13, 35, 36, 37, 38, 39, 40, 
+ 40, 42, 43, 44), X0.1 = c(10, 40, 45, 46, 36, 37, 38, 40, 46, 
+ 45, 46, 43, 44, 46)), .Names = c("A", "B"), row.names = c(NA, 
+ 14L), class = "data.frame")
    A  B
1   9 10
2  13 40
3  13 45
4  13 46
5  35 36
6  36 37
7  37 38
8  38 40
9  39 46
10 40 45
11 40 46
12 42 43
13 43 44
14 44 46

2 个答案:

答案 0 :(得分:3)

以下是两条线索:

  1. 要创建梯形图,最简单的方法是使用ladderplot包中的plotrix函数。代码示例:
  2. # install.packages('plotrix')  ## this is to install the plotrix package
    require('plotrix')
    ladderplot(my.2.columns.matrix)
    

    。  2.要覆盖误差线,最简单的方法是使用errbar包中的Hmisc功能。代码示例:

    # install.packages('Hmisc')  ## this is to install the Hmisc package
    require('Hmisc')
    errbar(c(1,2),c(mean1, mean2),c(mean1-sem1,mean2-sem2),c(mean1+sem1,mean2+sem2),add=TRUE)
    

    尝试调整这些代码片段以使其适合您,并在您被困在某处时发表评论。

    编辑

    以添加完整示例:

    查看完整的代码示例,以及生成的图片:

    require('plotrix')
    require('Hmisc')
    
    vals = cbind(rnorm(5,mean=3,sd=1), rnorm(5,mean=5,sd=1))
    
    ladderplot(vals)
    
    means = colMeans(vals)
    sems = apply(vals, 2, function(x) sd(x)/sqrt(length(x)))
    
    errbar(c(1,2),c(means[1], means[2]),c(means[1]-sems[1],means[2]-sems[2]),c(means[1]+sems[1],means[2]+sems[2]),
           add=TRUE,
           errbar.col='red',col='red')
    

    enter image description here

答案 1 :(得分:2)

你应该明白(虽然很多人不这样做)箱形图既没有显示手段也没有标准偏差,除了偶然外,它们不显示四分位数范围。您可以使用相同的策略来注释盒子图"。 (使用先前问题的数据结构。)

x<-data.frame(A=c(1:10), B=c(1:10)+rnorm(10))
xx<-stack(x) # restructures data for stripchart function

with( xx, boxplot(values~ind))
apply(x,1,lines, col="blue")
apply(x,1,points, col="red")

enter image description here

如果案件数量很多,可以通过使用较小的点并使颜色透明来改善一般用途。