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.8k
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とLLMで自然言語処理
bob3bob3
3
540
RでPSM分析
bob3bob3
1
290
Rでコンジョイント分析 2024年版
bob3bob3
0
1.4k
『改訂新版前処理大全』の話と Apache Parquet の話 #TokyoR
bob3bob3
0
1.1k
R言語の環境構築と基礎 Tokyo.R 112
bob3bob3
0
570
『データ可視化学入門』をPythonからRに翻訳した話(増強版)
bob3bob3
0
510
『データ可視化学入門』を PythonからRに翻訳した話
bob3bob3
1
590
qeMLパッケージの紹介
bob3bob3
0
2k
「国と音楽」 ~spotifyrを用いて~ #muana
bob3bob3
2
580
Other Decks in Science
See All in Science
baseballrによるMLBデータの抽出と階層ベイズモデルによる打率の推定 / TokyoR118
dropout009
1
500
3次元点群を利用した植物の葉の自動セグメンテーションについて
kentaitakura
2
1.3k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
130
データマイニング - グラフ構造の諸指標
trycycle
PRO
0
120
MoveItを使った産業用ロボット向け動作作成方法の紹介 / Introduction to creating motion for industrial robots using MoveIt
ry0_ka
0
510
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
220
データマイニング - ノードの中心性
trycycle
PRO
0
190
Quelles valorisations des logiciels vers le monde socio-économique dans un contexte de Science Ouverte ?
bluehats
1
420
アナログ計算機『計算尺』を愛でる Midosuji Tech #4/Analog Computing Device Slide Rule now and then
quiver
1
200
Symfony Console Facelift
chalasr
2
460
システム数理と応用分野の未来を切り拓くロードマップ・エンターテインメント(スポーツ)への応用 / Applied mathematics for sports entertainment
konakalab
1
340
01_篠原弘道_SIPガバニングボード座長_ポスコロSIPへの期待.pdf
sip3ristex
0
560
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
Speed Design
sergeychernyshev
32
1k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Embracing the Ebb and Flow
colly
86
4.8k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
47
9.6k
Unsuck your backbone
ammeep
671
58k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
750
Bash Introduction
62gerente
613
210k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
50
5.5k
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!