web-dev-qa-db-ja.com

ggplot2のデフォルトのフォントは何ですか

Rでggplot2を使用する場合、base_familyフォント。それは何ですか?に見られるように、ドキュメントは単に「」を使用しているため...

?theme_light()

ArialMTのように見えますが、確かではありません...

28
h.l.m

これは完全な答えではありませんが、一部は次のとおりです。

  • テーマは複雑です: http://ggplot2.tidyverse.org/reference/theme.html
  • theme_set()およびtheme_get()は、セッションのデフォルトテーマを設定および照会できます
  • テーマはリストであり、名前付きtextリストとそのfamily要素は、フォント名が使用されていることを示します。 ggplotのテーマ呼び出しでそれを設定して、そのテーマのデフォルトをオーバーライドできます。
  • Windowsでは、windowsFonts()は、フォント名とインストールされているシステムフォント名の間のマッピングを示します。しかし、OS XまたはLinuxプラットフォームでこれを行う方法はわかりません。
  • デフォルトは、すべてのプラットフォームでserifsans、およびmonoのようです。

私の主な未解決の質問は、空白の姓「」が何にマッピングされるかということです。これは通常、テーマに含まれているからです。何も指定されていない場合、デフォルトは何らかの形でsansに設定されます。

theme_gray()のデフォルトのフォントファミリーを置き換える方法もわかりませんでした。質問の時間だと思う...

> theme_get()$text
List of 10
 $ family    : chr ""
 $ face      : chr "plain"
 $ colour    : chr "black"
 $ size      : num 11
 $ hjust     : num 0.5
 $ vjust     : num 0.5
 $ angle     : num 0
 $ lineheight: num 0.9
 $ margin    :Classes 'margin', 'unit'  atomic [1:4] 0 0 0 0
  .. ..- attr(*, "unit")= chr "pt"
  .. ..- attr(*, "valid.unit")= int 8
 $ debug     : logi FALSE
 - attr(*, "class")= chr [1:2] "element_text" "element"

Windowsのシステムフォントマッピング:

> windowsFonts()
$serif
[1] "TT Times New Roman"

$sans
[1] "TT Arial"

$mono
[1] "TT Courier New"

> 

例:

library(ggplot2)
ggplot(mtcars, aes(x=wt, y=mpg)) + geom_point() +
  ggtitle("Fuel Efficiency of 32 Cars") +
  xlab("Weight (x1000 lb)") + ylab("Miles per Gallon") +
  theme(text=element_text(size=16,  family="serif"))

enter image description here

28
Mike Wise

Ggplot2を使用して作成されたFigureをエクスポートし(RStudioを使用:[エクスポート]-> [クリップボードにコピー])、グラフィックエディターにロードすると、テキストを含むFigureの個々のアスペクトを選択および編集できます。

Inkscapeを使用すると、すべてのggplot2プロットのデフォルトフォントはArialです。

7
Rebecca