ggsave导出ggplot2图表后Y轴标签减号缺失,如何修复?
解决ggplot2中Y轴公式标签减号无法正常显示的问题
问题出在你使用了中文全角减号,同时公式写法不够规范,导致R的expression解析异常。以下是两种可行的解决方法:
方法1:使用原生数学表达式语法(推荐)
直接用expression支持的数学语法组合文本和公式,避免paste拼接,同时替换全角减号为英文半角减号:
library(ggplot2) plot1 <- ggplot(mtcars, aes(x=hp, y=mpg)) + geom_point(size=3) + ylab(expression(test~frac(A - B, c)))
~用于连接普通文本和数学表达式部分frac()是expression内置的分数排版函数,比手动写/更规范- 减号必须用英文半角
-,不能用中文全角符号
方法2:保留paste的写法(调整符号和语法)
如果习惯用paste,同样替换全角减号为半角,并用frac()优化分数显示:
plot1 <- ggplot(mtcars, aes(x=hp, y=mpg)) + geom_point(size=3) + ylab(expression(paste("test ", frac(A - B, c))))
执行修改后的代码再导出PDF,Y轴标签就能正常显示test (A-B)/c的格式了。
内容的提问来源于stack exchange,提问作者i.b
相关产品推荐
相关产品推荐

