Google ColabでRを使う

Google Colaboratory(略称Colab)でRが簡単に使えるようになりました。[ランタイム]→[ランタイムのタイプを変更]でランタイムのタイプをPython 3からRに切り替えて「保存」するだけです。Rのバージョンは version コマンドでわかります。

version
               _
platform       x86_64-pc-linux-gnu
arch           x86_64
os             linux-gnu
system         x86_64, linux-gnu
status
major          4
minor          5.3
year           2026
month          03
day            11
svn rev        89597
language       R
version.string R version 4.5.3 (2026-03-11)
nickname       Reassured Reassurer
library()$results[,1]
'IRdisplay' 'IRkernel' 'pbdZMQ' 'repr' 'askpass' 'backports' 'base64enc' 'bit' 'bit64' 'blob' 'boot' 'brew' 'brio' 'broom' 'bslib' 'cachem' 'callr' 'cellranger' 'class' 'cli' 'clipr' 'cluster' 'codetools' 'commonmark' 'conflicted' 'cpp11' 'crayon' 'credentials' 'curl' 'data.table' 'DBI' 'dbplyr' 'desc' 'devtools' 'diffobj' 'digest' 'downlit' 'dplyr' 'dtplyr' 'ellipsis' 'evaluate' 'fansi' 'farver' 'fastmap' 'fontawesome' 'forcats' 'fs' 'gargle' 'generics' 'gert' 'ggplot2' 'gh' 'gitcreds' 'glue' 'googledrive' 'googlesheets4' 'gtable' 'haven' 'highr' 'hms' 'htmltools' 'htmlwidgets' 'httpuv' 'httr' 'httr2' 'ids' 'ini' 'isoband' 'jquerylib' 'jsonlite' 'KernSmooth' 'knitr' 'labeling' 'later' 'lattice' 'lifecycle' 'lubridate' 'magrittr' 'MASS' 'Matrix' 'memoise' 'mgcv' 'mime' 'miniUI' 'modelr' 'nlme' 'nnet' 'openssl' 'otel' 'pak' 'pillar' 'pkgbuild' 'pkgconfig' 'pkgdown' 'pkgload' 'praise' 'prettyunits' 'processx' 'profvis' 'progress' 'promises' 'ps' 'purrr' 'R6' 'ragg' 'rappdirs' 'rcmdcheck' 'RColorBrewer' 'Rcpp' 'readr' 'readxl' 'rematch' 'rematch2' 'reprex' 'rlang' 'rmarkdown' 'roxygen2' 'rpart' 'rprojroot' 'rstudioapi' 'rversions' 'rvest' 'S7' 'sass' 'scales' 'selectr' 'sessioninfo' 'shiny' 'sourcetools' 'spatial' 'stringi' 'stringr' 'survival' 'sys' 'systemfonts' 'testthat' 'textshaping' 'tibble' 'tidyr' 'tidyselect' 'tidyverse' 'timechange' 'tinytex' 'tzdb' 'urlchecker' 'usethis' 'utf8' 'uuid' 'vctrs' 'viridisLite' 'vroom' 'waldo' 'whisker' 'withr' 'xfun' 'xml2' 'xopen' 'xtable' 'yaml' 'zip' 'base' 'compiler' 'datasets' 'foreign' 'graphics' 'grDevices' 'grid' 'methods' 'parallel' 'splines' 'stats' 'stats4' 'tcltk' 'tools' 'utils'

グラフのサイズを指定するには,例えば次のようにオプションを指定します:

options(repr.plot.width=8, repr.plot.height=6)

以降のセッションのすべてのグラフが影響を受けます。それぞれ幅と高さで,単位はインチです。1インチが120ピクセルに相当するサイズのPNG画像になります。Colabの中で見ていると小さいように見えても,ドラッグ&ドロップで取り出して開くと,けっこうなサイズのものですので,あまり大きくしないようにしましょう。デフォルトは幅・高さとも7インチ(840ピクセル)です。

グラフのラベル等で日本語を使うには次のようにします。

install.packages("showtext")
library(showtext)
font_add_google("Noto Sans JP", "noto")
showtext_auto()
par(family="noto")

curve(dnorm(x), -3, 3, main="正規分布")

あるいは、svgliteでSVGを出力して表示します。

install.packages("svglite")
library(svglite)
library(IRdisplay)

svglite("test.svg", width=7, height=4, fix_text_size=FALSE)
curve(dnorm(x), -3, 3, main="正規分布")
dev.off()
display_svg(file="test.svg")