【发布时间】:2016-03-09 17:53:31
【问题描述】:
是否可以在 ggbiplot 中更改椭圆(包括圆)的粗细?这些论点似乎没有那个选项。还有其他方法吗?到目前为止,我已经通过使我的数据点更加透明来解决这个问题。
【问题讨论】:
-
这个函数来自哪个包?
-
ggbiplot 是一个包
是否可以在 ggbiplot 中更改椭圆(包括圆)的粗细?这些论点似乎没有那个选项。还有其他方法吗?到目前为止,我已经通过使我的数据点更加透明来解决这个问题。
【问题讨论】:
我假设您从 github 获得了最新版本的 ggbiplot(2015 年 6 月 19 日 https://github.com/vqv/ggbiplot)。在这一个中,圆的厚度是硬编码的,但你可以很容易地修改代码。此处设置有问题的参数(ggbiplot() 定义中的第 86 行左右):
if (circle) {
theta <- c(seq(-pi, pi, length = 50), seq(pi, -pi,
length = 50))
circle <- data.frame(xvar = r * cos(theta), yvar = r *
sin(theta))
g <- g + geom_path(data = circle, color = muted("white"),
size = 1/2, # <= MODIFY HERE
alpha = 1/3)
}
【讨论】:
ggbiplot 即可获取函数定义,将其复制到编辑器中,进行修改,然后定义一个新的ggbiplot 函数。
将ggbiplot 代码复制到一个新函数中并对其进行更改是可行的,但第87 行中的更改仅在var.axes = TRUE 的情况下才有效,这是默认设置。如果你设置了var.axes = FALSE,那么你需要在第124行的调用中添加一个size参数。类似于g <- g + geom_path(data = ell, aes(color = groups, group = groups),size=2)。
【讨论】: