gpt4 book ai didi

r - 如何在ggplot2中使用斜体作为构面标签?

转载 作者:行者123 更新时间:2023-12-04 21:52:38 24 4
gpt4 key购买 nike

我正在尝试对 ggplot2 中的方面名称使用斜体。我首先对方面进行排序和重命名。我遇到了一个 potential solution ,但这需要 labeller=label_parsed我正在使用 labeller=name_labeller重命名我的构面。

在以下示例中,我希望构面名称“一”“二”“三”“四”和“五”为斜体。这是一个示例数据框:

structure(list(Names = c(1L, 1L, 2L, 2L, 3L, 3L, 4L, 4L, 5L, 
5L, 6L, 6L, 7L, 7L, 8L, 8L, 9L, 9L, 10L, 10L), Other = c(5L,
3L, 2L, 6L, 5L, 4L, 5L, 4L, 5L, 3L, 2L, 6L, 5L, 4L, 5L, 4L, 4L,
5L, 3L, 2L), X = c(0L, 10L, 0L, 10L, 0L, 10L, 0L, 10L, 0L, 10L,
0L, 10L, 0L, 10L, 0L, 10L, 0L, 10L, 0L, 10L), Y = c(0L, 10L,
0L, 10L, 0L, 10L, 0L, 10L, 0L, 10L, 0L, 10L, 0L, 10L, 0L, 10L,
0L, 10L, 0L, 10L)), .Names = c("Names", "Other", "X", "Y"), class = "data.frame", row.names = c(NA,
-20L))

和产生情节的代码是
library(ggplot2)
library(grid)
vplayout <- function(x, y) viewport(layout.pos.row = x, layout.pos.col = y)



facets <- c("1", "2", "3", "4", "5")

names <- list(
'1'="one",
'2'="two",
'3'="three",
'4'="four",
'5'="five"
)

name_labeller <- function(variable,value){
return(names[value])
}

ggplot(FacetTestData[FacetTestData$Names %in% facets,], aes(y = Y, x = X, group = Names)) +
geom_point(shape = 21, size=3) +
scale_fill_manual(values=c("gray90","gray40")) +
geom_smooth(method="lm", se= FALSE, size = 1) +
scale_color_manual(values=c("black","black")) +
geom_smooth(method = 'lm', size = 1, colour = 'red', se = FALSE) +
facet_grid(Names ~ ., labeller=name_labeller)

以下代码似乎为列表 names 赋予了斜体属性。
levels(names) <- c("italic('one')", "italic('two')", "italic('three')", "italic('four')",    "italic('five')")

但我不太清楚如何使用 facet_grid() 来完成这项工作.有谁知道我怎么能做到这一点?

最佳答案

沿着这些路线的东西应该工作:

... + theme(strip.text = element_text(face = "italic"))

the docs更多详情 theme() .

关于r - 如何在ggplot2中使用斜体作为构面标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20037843/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com