Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Tokyo.R RStudioでグラフをちょっときれいに出力する - CairoとAGG -
Search
bob3bob3
May 31, 2022
Science
0
1.3k
Tokyo.R RStudioでグラフをちょっときれいに出力する - CairoとAGG -
RStudioでグラフを描く際、グラフィック・デバイスをCairoやAGGに設定すると、アンチエイリアスの効いたキレイなグラフを出力できます。
RMarkdownでも使えます。
# TokyoR
bob3bob3
May 31, 2022
Tweet
Share
More Decks by bob3bob3
See All by bob3bob3
R言語の環境構築と基礎 Tokyo.R 112
bob3bob3
0
300
『データ可視化学入門』をPythonからRに翻訳した話(増強版)
bob3bob3
0
320
『データ可視化学入門』を PythonからRに翻訳した話
bob3bob3
1
380
qeMLパッケージの紹介
bob3bob3
0
1k
「国と音楽」 ~spotifyrを用いて~ #muana
bob3bob3
2
350
パーマーステーションのペンギンたち#3 探索的データ分析(EDA)編
bob3bob3
1
450
Redditで遊ぼう #TokyoR 106
bob3bob3
0
540
シン・初心者のためのR-Tips
bob3bob3
0
360
応用セッション発表のすすめ
bob3bob3
0
700
Other Decks in Science
See All in Science
20240127_OpenRadiossエアバッグ解析
kamakiri1225
0
160
東大・松尾研主催 LLM Summer 2023 コンペ解法 (11位 – 20位枠での優秀賞)
hayataka88
0
200
研究・教育・産学連携の循環の実践
sshimizu2006
0
240
ざっと学んでみる確率過程 〜その1 : ブラウン運動〜
nearme_tech
0
110
Machine Learning for Materials (Lecture 6)
aronwalsh
0
440
同じデータでもP値が変わる話/key_considerations_in_NHST
florets1
1
1.1k
統計的因果探索の方法
sshimizu2006
1
900
JSol'Ex : solar image processing in Java
melix
0
260
Endocannabinology 101
drbonci
PRO
0
260
遺伝子発現プロファイルに基づく新しい薬物間相互作用予測法
tagtag
0
110
HAS Dark Site Orientation
astronomyhouston
0
5k
汎用原子シミュレータMatlantis のご紹介
matlantis
0
170
Featured
See All Featured
Building Applications with DynamoDB
mza
88
5.7k
Music & Morning Musume
bryan
41
5.6k
Intergalactic Javascript Robots from Outer Space
tanoku
266
26k
Designing for Performance
lara
601
67k
Build The Right Thing And Hit Your Dates
maggiecrowley
25
2k
The Brand Is Dead. Long Live the Brand.
mthomps
49
31k
WebSockets: Embracing the real-time Web
robhawkes
59
7k
Docker and Python
trallard
35
2.7k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
1
130
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
34
8.9k
Facilitating Awesome Meetings
lara
43
5.6k
Infographics Made Easy
chrislema
238
18k
Transcript
グラフをちょっとキレイに出力する - CairoとAGG - 2022/06/04 Tokyo.R #99 @bob3bob3
Graphics Deviceを変えてみる • 画像を描く仕組みのこと。RStudioではOSのデフォルトの他にCairoと AGG(Anti-Grain Geometry)が選べる。 • メニューのTools → GrobalOptions
→ General → Graphics で設定できる。
Cairo、AGGではアンチエイリアスの効いたなめらかな描画ができる。 Graphics Device による描画の違い デフォルト設定 Cairo AGG
Cairoはそのままだと日本語が豆腐になる。 Graphics Device による描画の違い デフォルト設定 Cairo AGG
フォントを指定すればCairoでも日本語が表示される。 Graphics Device による描画の違い(フォント指定) デフォルト設定 Cairo AGG
ggplot2でのフォントの指定 • ggplot2でフォントを指定するには以下を加えればOK。 ◦ theme(text = element_text("フォントファミリー名")) • 使えるフォントファミリーは以下で確認できる。 ◦
systemfonts::system_fonts() |> select(family) |> distinct() |> View() ◦ よく使われるフォントファミリーは以下。 ▪ Windows: Meiryo, Yu Gothic, UD Digi Kyokasho NK-B ▪ Mac: Hiragino Sans, Noto Sans CJK JP
• アンチエイリアスが効く分、PNG形式ではファイルサイズが大きくなる。 ファイルサイズは大きくなる 8kb 78kb 80kb
RMarkdownでAGGを使いたい • setupチャンクに以下を書いておけばファイル全体に適用され る。 knitr::opts_chunk$set(dev = "ragg_png") • YAMLヘッダーに以下のように書くのでもOK •
チャンクごとに設定したい場合はチャンクオプションを以下のようにす る。 ```{r hogehoge, dev = "ragg_png"}
まとめ • CairoとAGG、どちらもアンチエイリアスが効いた滑らかな描画が特徴。 • 文字(フォント)の表現が結構違う。 • アンチエイリアスが効く分、PNG形式だとファイルサイズが大きくなる。 • Cairoは日本語の表示にフォントの指定が必要。 •
AGGはCairoより高速。2006年で開発が止まっている。 • Enjoy!