假设我有下

y <- rnorm(10)
b <- as.factor(sample(1:4,10,replace=T))
qplot(1:10, y, shape=b)

我怎么改变形状,使用的使用 ggplot2?

有帮助吗?

解决方案

该ggplot的方式来做到这将是用 scale_shape_manual 并提供所需的形状 values 参数:

qplot(1:10, y, shape=b) + scale_shape_manual(values = c(0, 5, 6, 15))

result of above

形状是一样的平常的0至25索引: http://yusung.blogspot.com/2008/11/plot-symbols-in-r.html

其他提示

要补充哈伦的答案,这里是可用的形状,一个引用 - 从0开始在底部的左边和右边读然后向上(10Y + X):

df <- data.frame(x=c(0:129))
ggplot(df, aes(x=x%%10, y=floor(x/10), shape=factor(x), colour=x, size=10)) +
  geom_point() +
  scale_shape_manual(values=df$x) + theme(legend.position='none') +
  scale_x_continuous(breaks=0:10) + scale_y_continuous(breaks=0:12) +
  scale_colour_hue() + scale_colour_gradientn(colours=rainbow(3))

“在GGPLOT2可用形状”

> y <- rnorm(10)
> b <- as.factor(sample(1:4,10,replace=T))
> qplot(1:10, y, shape=b)
> qplot(1:10, y, pch=letters[1:10], cex=6)

这是什么意思?我想你可以使用任何讨论R的标识字符...

这可能不是,虽然这样做的很“ggplot”的方式,但该男子页面不读“你可以用它就像你使用‘阴谋’的功能。” : - )

“替代文字”

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top