我知道我们通常会这样做:
x=c(rep(0.3,100),rep(0.5,700))
plot(table(x))
但是,我们只能在图表中获得几个点或垂直线。
如果我想要在0.3以上的100点和700点以上的点数,我该怎么办?
答案 0 :(得分:0)
这样的东西?
x <- c(rep(.3,100), rep(.5, 700))
y <- c(seq(0,1, length.out=100), seq(0,1,length.out=700))
plot(x,y)
编辑(遵循OP的评论)
在这种情况下,这样的事情应该有效。
x <- rep(seq(1, 10)/10, seq(100, 1000, by=100))
x.t <- as.matrix(table(x))
y <- unlist(apply(x.t, 1, function(x) seq(1,x)))
plot(x,y)
答案 1 :(得分:0)
您可以使用linetype
和linewidth
设置...
plot(table(x),lty=3,lwd=0.5)
答案 2 :(得分:0)
对于较小的数字(计数),您可以stripchart
使用method="stack"
,如下所示:
stripchart(c(rep(0.3,10),rep(0.5,70)), pch=19, method="stack", ylim=c(0,100))
但条形图不适用于700点。
编辑:
包TeachingDemos中的dots()
函数可能是您想要的:
require(TeachingDemos)
dots(x)