删除 ggplot 轴标签中斜体周围的间距

Ada*_*m_G 1 r ggplot2

我正在将情节复制到下面。但是,当我将n标签中的 斜体化时,它会在其后面添加间距。如何控制斜体周围的间距?这是代码的最小版本:

ggplot(data.frame()) + 
    labs(labs(x=expression("Proportion of "~italic(n)-"gram Model (1-"*gamma*")")))
Run Code Online (Sandbox Code Playgroud)

这是实际的情节:

在此输入图像描述

完整代码(数据太大无法发布):

ggplot(all_pplx, aes(x=(1-Weight), y=perplexity_val)) +
  geom_line(aes(color=`n-gram`)) +
  scale_y_log10() +
  # scale_x_reverse() +
  labs(title="",
       x=expression("Proportion of "~italic("n")-"gram Model ("*gamma*")"),
       y="Perplexity") +
  theme(axis.text.x = element_text(size=12),
        axis.text.y = element_text(hjust = 1, size=12),
        axis.title.x = element_text(size=12,face="bold"),
        axis.title.y = element_text(size=12),
        plot.title = element_text(hjust = 0.5, size=12),
        legend.position = c(0.15, 0.7), 
        legend.background = element_rect(color = "black", 
                                         fill = "grey90", 
                                         size = .2, 
                                         linetype = "solid")) +
  ggsave('emnlp_new-exp1.pdf', device='pdf')
Run Code Online (Sandbox Code Playgroud)

ali*_*ire 5

您希望将-解释为连字符,而不是减号,因此将其包含在字符串部分中。然后使用 将该字符串连接到斜体*,这会将符号彼此相邻,而不是~,这会留下空格。

\n\n

另一方面,(1-\xce\xb3)格式化为数学。

\n\n\n\n
library(ggplot2)\n\nggplot(data.frame()) + \n    labs(x = expression("Proportion of"~italic(n)*"-gram Model"~(1-gamma)))\n
Run Code Online (Sandbox Code Playgroud)\n\n

\n\n

文档位于?plotmath.

\n