0

我正在创建一个简单的三元图。

ggtern(data=data.frame(x=c(0.1,0.1),y=c(0.2,0.2),z=c(0.7,0.7)),aes(x,y,z)) + geom_point()

如何抖动该点以使绘图显示两个点?我尝试像这样使用 position_jitter_tern:但它没有改变任何东西。

ggtern(data=data.frame(x=c(0.1,0.1),y=c(0.2,0.2),z=c(0.7,0.7)),aes(x,y,z, position_jitter_tern(0.1,0.1,0.1))) + geom_point()

图像可以在这里看到

4

2 回答 2

1

您需要在geom_point函数内使用“位置”选项。

library(ggtern)

df <- data.frame(x=c(0.1,0.1),y=c(0.2,0.2),z=c(0.7,0.7))

ggtern(data=df, aes(x,y,z) ) + 
       geom_point(position= position_jitter_tern(x=0.1, y=0.1, z=0.02))

在此处输入图像描述

于 2021-05-08T03:34:15.623 回答
0

您可以将基本jitter功能应用于数据框。

library(ggtern)
library(ggplot2)

data=data.frame(x=c(0.1,0.1),y=c(0.2,0.2),z=c(0.7,0.7))
data[] <- lapply(data, jitter, 3)
ggtern(data,aes(x,y,z)) + geom_point()

在此处输入图像描述

于 2021-05-08T03:09:07.787 回答