r - 当 parse=TRUE 时将 geom_text 更改为粗体

标签 r plot ggplot2 geom-text

我正在注释分面图以包含上标,但无法将文本设为粗体。我意识到这与创建 expression 有关。在绘图调用之外,然后指定 parse=TRUE .可能有一个非常简单的解决方案,但到目前为止我尝试过的任何方法都没有奏效,包括使用 bquote()bold() .谢谢

library(ggplot2)

data(iris)

rsq<-c(.3,.6,.75)
pos<-c(5,6,7)
Species<-levels(iris$Species)

big_data<-as.data.frame(cbind(pos, rsq))
big_data$Species<-Species

lab <- paste("r^2 == ", round(big_data$rsq,2))

ggplot(iris, aes(x=Sepal.Length, y=Sepal.Width)) +
  facet_wrap(~Species,scales='free_x')+
  geom_point(size=3,show.legend = F) +
  geom_text(aes(x=pos,y=1,label=as.character(lab)),parse=TRUE,data=big_data,fontface='bold')

enter image description here

最佳答案

您可以获得r成为 bold()

lab <- sprintf("bold(r)^2 == %.2f", big_data$rsq)

但仅此而已。来自 ?plotmath

Note that bold, italic and bolditalic do not apply to symbols, and hence not to the Greek symbols such as mu which are displayed in the symbol font. They also do not apply to numeric constants.



更好的排版最好的选择可能是 tikzDevice。

关于r - 当 parse=TRUE 时将 geom_text 更改为粗体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43728261/

相关文章:

r - 在同一个 Shiny 的应用程序中使用 shinyjs 和 ggplot2::autoplot

r - 创建数据框列表

r - 绘制多条 ROC 曲线的平均 ROC 曲线,R

r - 在shinyR仪表板中为ggplot2创建动态相关输入过滤器并相应地渲染绘图

r - ggplot2 - 如何并排绘制图表,只留下一个图例

r - 如何 reshape 具有多个相关二进制 "observations"的数据,以便与 ggplot 配合良好?

r - 按 id 为多个日期之间的每个日期创建行

python - 绘制两个 pandas 数据框列之间差异的分布图

matlab - 如何在 MATLAB 中绘制类贝塞尔函数

r - 向外移动曲线上绘制的一系列数字