当我使用 ggplot2
制作 map 并尝试使用字符串使用 expression()
和 italic()
的组合将图标题的一部分斜体时,我的 map 会按需要显示:
plottitle <- expression(paste('Example map with ', italic('italics')))
crimes <- data.frame(state = tolower(rownames(USArrests)), USArrests)
states_map <- map_data("state")
map <- ggplot(crimes, aes(map_id = state)) +
geom_map(aes(fill = Murder),
map = states_map) +
expand_limits(x = states_map$long,
y = states_map$lat) +
labs(title = plottitle)
map
但是,当我尝试做同样的事情但使用对象而不是字符串时,该对象不会评估为所需的字符串:
word <- 'italics'
plottitle2 <- expression(paste('Example map with ', italic(word)))
map <- ggplot(crimes, aes(map_id = state)) +
geom_map(aes(fill = Murder),
map = states_map) +
expand_limits(x = states_map$long,
y = states_map$lat) +
labs(title = plottitle2)
map
在应用
word
之前,如何让向量 italic()
进行评估?
最佳答案
bquote 或替代应该工作,
a = 'text'
plot(1,1, main=bquote(italic(.(a))))
plot(1,1, main=substitute(italic(x), list(x=a)))
关于r - 在 ggplot2 标题表达式中使用带有变量的 italic(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31927984/