就像我说的,我正在尝试在 ggplot 中创建一个 for 循环。我知道这很难做到,而且可能有更好的方法来做到这一点,但我需要搅动许多这些图,每个图都有不同的数据集(不同长度),而 for 循环似乎是更合乎逻辑的选择。 我的想法是手动创建一个双图,我想做的是将箭头从 (0,0) 点添加到相应的结束坐标。到目前为止的代码
endx<-rnorm(10)
endy<-rnorm(10)
dd = data.frame(endx, endy)
g<-ggplot(dd, aes(x= endx, y= endy))+theme_bw()
g<-g + geom_point()
for (i in endx) {
g <- g+ geom_segment(aes(x=0, y=0, xend=endx[i], yend=endy[i]), arrow = arrow(length=unit(.5, 'cm')))
}
g
但它什么也没做。
有什么想法吗?
使用 ggplot 和从另一个程序推断的特征值创建加载和/或双标图。
Print
是你的朋友。保持接近你的语法:
set.seed(01032024)
dd = data.frame(endx = rnorm(10), endy = rnorm(10))
library(ggplot2)
g = ggplot(dd, aes(x = endx, y= endy)) +
geom_point() +
theme_bw()
for (i in seq_len(nrow(dd)))
print(g + geom_segment(aes(x = 0, y = 0, xend = endx[i], yend = endy[i]),
arrow = arrow(length = unit(.5, 'cm'))))