チャートにLaTeX表記による数式等を記入する方法

チャートに LaTeX表記 による数式等を記入する方法です。

始めにサンプルとするチャートを作成します。

set.seed(20240604)
library(ggplot2)
library(dplyr)
n <- 100
x <- seq(0, 1, length.out = n)
y <- 5 * x - 0.3 * x^2 + 0.4 * x^3 + rnorm(n, mean = 0, sd = 10)
g <- ggplot(mapping = aes(x, y)) +
  geom_line() +
  geom_point()
g
Figure 1

パッケージ latex2exp を利用して、y=5x0.3x2+0.4x3+N(0,10) をタイトルに記入します。

library(latex2exp)
packageVersion("latex2exp")
[1] '0.9.6'
g + labs(title = TeX(input = "$y=5x-0.3x^2+0.4x^3+N(0,10)$"))
Figure 2

引数 bold を利用して太字にすることが可能です。

g + labs(title = TeX(input = "$y=5x-0.3x^2+0.4x^3+N(0,10)$", bold = T))
Figure 3

引数 italic を利用してイタリック体にすることも可能です。

g + labs(title = TeX(input = "$y=5x-0.3x^2+0.4x^3+N(0,10)$", italic = T))
Figure 4

タイトル以外にも可能です。

g + labs(y = TeX(input = "$y=5x-0.3x^2+0.4x^3+N(0,10)$", bold = T), title = TeX(input = "$\\LaTeX$"))
Figure 5

チャート中に記入することも出来ます。

g + annotate("text", x = 0.75, y = -20, label = TeX(input = "$y=5x-0.3x^2+0.4x^3+N(0,10)$", bold = T))
Figure 6

ggplot に限りません。

plot(y, main = TeX(input = "$y=5x-0.3x^2+0.4x^3+N(0,10)$", bold = T))
Figure 7

以上です。