我有一张带有平均值和四分位间距的表。我想创建一个点图,其中点将显示该平均值,并且一条条形图会延伸穿过该点以显示四分位间距。换句话说,点将位于条的中点,其长度将等于我的四分位间距数据。我在R工作。

例如,

labels<-c('a','b','c','d')
averages<-c(10,40,20,30)
ranges<-c(5,8,4,10)
dotchart(averages,labels=labels)

然后将范围作为条形图添加到此绘图中。

有任何想法吗?

谢谢!

最佳答案

还有另一种使用base的方法。

labels <- c('a', 'b', 'c', 'd')
averages <- c(10, 40, 20, 30)
ranges <- c(5, 8, 4, 10)
dotchart(averages, labels=labels, xlab='average',  pch=20,
         xlim=c(min(averages-ranges), max(averages+ranges)))
segments(averages-ranges, 1:4, averages+ranges, 1:4)

10-08 00:30