增加三元图中的箭头粗细[ggtern]
Increase arrow thickness in ternary plot [ggtern]
这是一些示例代码。
library(ggtern)
# Based of random data.
DATA <- data.frame(A = runif(100), B = runif(100), C = runif(100))
plot <- ggtern(data = DATA,
mapping = aes(x = A, y = B, z = C)) +
geom_point() + ggtern::theme_bw(base_size = 30) + theme_arrowlarge()
plot
如何增加箭头和箭头的粗细?一旦我开始增加标签的大小,它们就太薄了。
此外,如何将参数 base_size 与 ggtern 主题一起使用?因为它似乎只适用于某些主题,所以如果我想放大所有内容(包括箭头),我不确定我是否正确使用它。
要更改箭头的线条粗细,您可以通过 theme()
函数访问 tern.axis.arrow
。然后将 element_line()
的大小更改为您喜欢的大小。
library(ggtern)
# Based of random data.
DATA <- data.frame(A = runif(100), B = runif(100), C = runif(100))
ggtern(data = DATA,
mapping = aes(x = A, y = B, z = C)) +
geom_point() +
ggtern::theme_bw(base_size = 30) +
theme_arrowlarge() +
theme(tern.axis.arrow = element_line(size = 3))
如果你想直接修改箭头选项,你可以从ggtern::theme_bw
函数后面的代码看到,lineend从一个名为tern.arrow
的全局选项调用。
function (base_size = 12, base_family = "")
{
base = ggplot2::theme_bw(base_size, base_family)
theme_ggtern(base_size, base_family) %+replace% base %+replace%
theme(tern.plot.background = element_rect(size = NA,
color = NA), tern.axis.line = element_line(color = base$panel.border$colour),
tern.axis.arrow = element_line(color = base$panel.border$colour,
lineend = getOption("tern.arrow")))
}
<bytecode: 0x7fb23868a558>
<environment: namespace:ggtern>
因此,您可以根据需要使用箭头选项来调整箭头类型、大小等。例如,这里我们将箭头更改为 0.75 厘米,线条粗细更改为大小 3 .
DATA <- data.frame(A = runif(100), B = runif(100), C = runif(100))
options(tern.arrow = arrow(type = "open", length = unit(.75, "cm")))
ggtern(data = DATA,
mapping = aes(x = A, y = B, z = C)) +
geom_point() +
ggtern::theme_bw(base_size = 30) +
theme_arrowlarge() +
theme(tern.axis.arrow = element_line(size = 3))
这会产生 a figure with thicker lines and bigger arrows。
这是一些示例代码。
library(ggtern)
# Based of random data.
DATA <- data.frame(A = runif(100), B = runif(100), C = runif(100))
plot <- ggtern(data = DATA,
mapping = aes(x = A, y = B, z = C)) +
geom_point() + ggtern::theme_bw(base_size = 30) + theme_arrowlarge()
plot
如何增加箭头和箭头的粗细?一旦我开始增加标签的大小,它们就太薄了。
此外,如何将参数 base_size 与 ggtern 主题一起使用?因为它似乎只适用于某些主题,所以如果我想放大所有内容(包括箭头),我不确定我是否正确使用它。
要更改箭头的线条粗细,您可以通过 theme()
函数访问 tern.axis.arrow
。然后将 element_line()
的大小更改为您喜欢的大小。
library(ggtern)
# Based of random data.
DATA <- data.frame(A = runif(100), B = runif(100), C = runif(100))
ggtern(data = DATA,
mapping = aes(x = A, y = B, z = C)) +
geom_point() +
ggtern::theme_bw(base_size = 30) +
theme_arrowlarge() +
theme(tern.axis.arrow = element_line(size = 3))
如果你想直接修改箭头选项,你可以从ggtern::theme_bw
函数后面的代码看到,lineend从一个名为tern.arrow
的全局选项调用。
function (base_size = 12, base_family = "")
{
base = ggplot2::theme_bw(base_size, base_family)
theme_ggtern(base_size, base_family) %+replace% base %+replace%
theme(tern.plot.background = element_rect(size = NA,
color = NA), tern.axis.line = element_line(color = base$panel.border$colour),
tern.axis.arrow = element_line(color = base$panel.border$colour,
lineend = getOption("tern.arrow")))
}
<bytecode: 0x7fb23868a558>
<environment: namespace:ggtern>
因此,您可以根据需要使用箭头选项来调整箭头类型、大小等。例如,这里我们将箭头更改为 0.75 厘米,线条粗细更改为大小 3 .
DATA <- data.frame(A = runif(100), B = runif(100), C = runif(100))
options(tern.arrow = arrow(type = "open", length = unit(.75, "cm")))
ggtern(data = DATA,
mapping = aes(x = A, y = B, z = C)) +
geom_point() +
ggtern::theme_bw(base_size = 30) +
theme_arrowlarge() +
theme(tern.axis.arrow = element_line(size = 3))
这会产生 a figure with thicker lines and bigger arrows。