ggplot2的默认字体是什么

时间:2016-01-05 11:04:58

标签: r ggplot2 fonts

在R中使用ggplot2时,它显然有base_family字体。它是什么?因为文档只使用“”,可以在...中看到。

?theme_light()

它看起来像ArialMT但不确定......

2 个答案:

答案 0 :(得分:25)

这不完整,但有些内容如下:

  • 主题很复杂:http://ggplot2.tidyverse.org/reference/theme.html
  • theme_set()theme_get()可以设置和查询会话的默认主题
  • 主题是一个列表,命名的text列表及其family元素将告诉您正在使用的字体名称。您可以在ggplot中的主题调用中设置它以覆盖该主题的默认值。
  • 在Windows中,windowsFonts()会告诉您字体名称与已安装的系统字体名称之间的映射。我不知道如何在OS X或Linux平台上执行此操作。
  • 所有平台上的默认值似乎都是serifsansmono

我的主要开放性问题是空白姓氏“”映射到什么,因为这通常是主题中的内容。如果没有指定任何内容,则默认设置为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

答案 1 :(得分:7)

如果您导出使用ggplot2创建的图形(使用RStudio:Export - >复制到剪贴板)并将其加载到图形编辑器中,您可以选择和编辑图形的每个方面,包括文本。

使用Inkscape,我所有ggplot2图的默认字体是Arial。