Как поменять метки троичного сюжета, сделанные ggtern?
Я пытаюсь сделать тройной заговор с ggtern. Это выглядит очень красиво. Но он показывает только процент по краям треугольника, например, 100, 90 ... Есть ли способ изменить это, чтобы показать реальное значение данных подчеркивания? Благодарю. Я взял пример из этого поста. Оригинальный пост
Данные выглядят так:
a <- c(0.1, 0.5,0.5, 0.6, 0.2, 0 , 0 , 0.004166667, 0.45)
b <- c(0.75,0.5,0 , 0.1, 0.2, 0.951612903,0.918103448, 0.7875 , 0.45)
c <- c(0.15,0 ,0.5, 0.3, 0.6, 0.048387097,0.081896552, 0.208333333, 0.10)
d <- c(500,2324.90,2551.44,1244.50, 551.22,-644.20,-377.17,-100, 2493.04)
Здесь a, b, c используются в качестве координат. Я хочу, чтобы эти разрывы были такими, как 0,1, 0,2 (срезанные значения, а не проценты, как 10,20 ...).
1 ответ
Кто-то написал мне на этой неделе с вопросом, о чем я думаю, что вы ищете, возможно, это то, что вы имеете в виду?
library(ggtern)
set.seed(1)
df = data.frame(x=runif(10),y=runif(10),z=runif(10))
#Normalise sum to unity
df.s = rowSums(df); for(x in c('x','y','z')) df[,x] = df[,x]/df.s
labFnc <- function(x,digits=2) format(round(unique(x),digits),digits=digits)
#Plot
ggtern(df,aes(x,y,z)) +
scale_T_continuous(breaks=unique(df$y),labels=labFnc(df$y)) +
scale_L_continuous(breaks=unique(df$x),labels=labFnc(df$x)) +
scale_R_continuous(breaks=unique(df$z),labels=labFnc(df$y)) +
theme_bw() +
theme_nogrid_minor() +
geom_point() +
labs(title="Example Use of Data Along Ternary Axes")
Это может быть принято в дальнейшем, с использованием geom_Xmark()
(X = T,L,R) новые геометрии, доступные в ggtern 2.1.0:
#Plot
ggtern(df,aes(x,y,z)) +
scale_T_continuous(breaks=unique(df$y),labels=labFnc(df$y)) +
scale_L_continuous(breaks=unique(df$x),labels=labFnc(df$x)) +
scale_R_continuous(breaks=unique(df$z),labels=labFnc(df$y)) +
theme_rgbw() +
theme_nogrid() +
geom_Lmark(colour='darkblue') +
geom_Tmark(colour='darkred') +
geom_Rmark(colour='darkgreen') +
geom_point() +
labs(title="Example Use of Data Along Ternary Axes")