Ubuntu Weekly Recipe

第527回 UbuntuにRStudioをインストールする方法

この記事を読むのに必要な時間:およそ 7 分

tidyverseをインストールするには

RユーザのためのRStudio[実践]入門ではtidyverseというRパッケージを利用して解説しています。つまり何はなくともまずinstall.packages("tidyverse")を実行するわけです。このtidyverseは特定の目的に合わせた各種Rパッケージの集合体みたいな扱いであり,さまざまなパッケージがインストールされます。中にはコンパイルが必要なRパッケージも存在し,Ubuntuとしては開発用のヘッダーファイルが含まれるDebianパッケージをあらかじめインストールしておく必要もあります。

一般的にはinstall.packages()実行時にディストリビューションごとに必要なパッケージ名を通知してくれる親切設計なRパッケージが多いため,画面の指示に従ってインストールすれば問題ありません。ただ,せっかくなのでtidyverseをインストールする前に最低限のパッケージはインストールしておきましょう。

$ sudo apt install libssl-dev libxml2-dev libcurl4-openssl-dev

あとはRのプロンプトで,次のコマンドを実行するだけです。PCのスペックによってはそれなりに時間がかかります。

> install.package("tidyverse")

Rのプロンプト上,RStudio上のどちらで実行しても問題ありません。Rの場合は次のように「システムにインストールする権限がないのでユーザーのホームディレクトリにインストールするが良いか?」と問い合わせがありますので「yes」と答えておきましょう。これによりinstall.packages()でインストールしたパッケージは~/R/以下に保存されます。

> install.packages("tidyverse")
Installing package into ‘/usr/local/lib/R/site-library’
(as ‘lib’ is unspecified)
Warning in install.packages("tidyverse") :
  'lib = "/usr/local/lib/R/site-library"' is not writable
Would you like to use a personal library instead? (yes/No/cancel) yes
Would you like to create a personal library
‘~/R/x86_64-pc-linux-gnu-library/3.5’
to install packages into? (yes/No/cancel) yes

R Markdownで必要なパッケージ

RユーザのためのRStudio[実践]入門の第5章ではR Markdownが紹介されています。R MarkdownではHTMLだけでなくPDFを始めとしたさまざまな文書フォーマットに出力が可能なツールです。しかしながらPDFへ出力する場合はTeX環境を構築する必要があります。そこで本書の第5章を読んだUbuntuユーザーが日本語を含むPDF出力もできるよう,Ubuntu 18.04 LTSでのTeX環境構築方法も紹介しましょう。

「紹介しましょう」も何も,次のパッケージ一式をインストールするだけです。

$ sudo apt install texlive-lang-japanese texlive-xetex \
  texlive-luatex texlive-latex-recommended

texlive-xetexとtexlive-luatexは,XeTeXLuaTeXのどちらか一方しか使わないのであれば,もう片方はインストールしなくても問題ありません。今回はLuaTeXのみを紹介します。texlive-latex-recommendedはプレゼンテーション用のBeamerを使いたい場合に必要になります。

LuaTeXを使って日本語文書を出力したい場合は,Rmdファイルのフロントマターに次のように記述します。

output:
  pdf_document:
    latex_engine: lualatex
documentclass: ltjsbook

これだけで日本語PDFを出力できるようになるはずです。

header-includesにはTeXのプリアンブルに記述したい内容を配列にして渡せます。たとえば埋め込み日本語フォントをIPAexフォントからNotoフォントに変えることを考えてみましょう。まずUbuntu側にNotoフォントをインストールしておきます。

$ apt install fonts-noto-cjk fonts-noto-cjk-extra

そして次のようにフロントマターに最後の3行を追記します。

output:
  pdf_document:
    latex_engine: lualatex
documentclass: ltjsbook
header-includes:
   - \usepackage{luatexja-fontspec}
   - \setmainjfont[BoldFont={NotoSerifCJKjp-Bold}]{NotoSerifCJKjp-Regular}
   - \setsansjfont[BoldFont={NotoSansCJKjp-Bold}]{NotoSansCJKjp-Regular}

Notoフォントはサイズが大きいのでビルドにかなり時間がかかるようになりますが,日本語の太字も正しく太字になったはずです。

これらの設定は出力形式をpdf_documentからbeamer_presentationにした場合も有効です。ただしBeamerを使う際はdocumentclassの行は削除してください。

著者プロフィール

柴田充也(しばたみつや)

Ubuntu Japanese Team Member株式会社 創夢所属。数年前にLaunchpad上でStellariumの翻訳をしたことがきっかけで,Ubuntuの翻訳にも関わるようになりました。

コメント

コメントの記入