[英]How to format the title in ggplot2
我有一個名為“ catch”的數據,觀察結果是:
x y
0.50 3.66
0.63 3.95
0.77 5.82
0.92 7.38
1.07 8.58
1.24 9.31
1.42 9.52
1.61 9.52
1.81 9.58
2.04 9.54
2.29 9.56
2.56 9.44
2.87 9.07
3.21 8.61
3.61 7.92
4.09 7.04
4.67 5.93
5.43 4.52
6.52 2.90
8.43 0.63
我在R中使用了以下代碼:
library(ggplot2)
ccplot <- ggplot(data = catch, aes(x = x, y = y)) +
geom_point(shape = 19, colour = "#0072B2")
ccplot <- ccplot + geom_abline(intercept = 14.58, slope = -1.85, col = "#D55E00")
ccplot2 <- ccplot +
xlab("time") +
ylab(expression(paste("ln[C(L1, L2)]/(", Delta, "t)")))
ccplot2 + ggtitle(expression(paste("Length-Converted Catch Curve\n(for Z=1.85; M(at 23"*degree*"C)=0.69; F=1.16; E=0.63"), hjust = 0))
當打印的圖形在數字23和度數符號之間有較大(較遠)的空間時,就會出現問題。
如何格式化標題,以便空格消失? 還是有其他方法可以在ggplot2中完成正確的標題?
先感謝您。
在這種情況下,最好使用Unicode度數符號,而不是嘗試使用plotmath。
ccplot2 + ggtitle(expression("Length-Converted Catch Curve\n(for Z=1.85; M(at 23\u00B0C)=0.69; F=1.16; E=0.63)"), hjust=0)
您還可以使用atop()
表達式進行布局
ccplot2 + ggtitle(expression(atop("Length-Converted Catch Curve","(for Z=1.85; M(at 23"~degree~"C)=0.69; F=1.16; E=0.63)")))
您的代碼正在發生的事情是,它正在打印第一個字符串(使用新行),然后在切換到帶度數的數學模式時,退出該字符串,並從兩行字符串的右側開始。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.