更改格点图例的字体

4

我将我的格子图的字体更改为LM Modern 10,该字体包含在个性化主题中。是否还有选项可以在主题中包括图例的字体样式?如果没有,是否可以在key参数中更改字体样式?

谢谢, Mara

代码示例:

mytheme<-list()
mytheme$par.xlab.text$fontfamily="LM Roman 10"

my.key <- list(
  space="bottom",
  columns=3,
  lines=list(pch=c(19,1,15),  size = 7,type=c("p")),
  text = list(c("text1", "text2", "text3")))

xyplot(data=dataframe,
       d1~d2,
       par.settings=mytheme,
       key=my.key)


如果不是太麻烦的话,我建议转换到 ggplot,以便在未来获得更好的支持。https://dev59.com/V1sW5IYBdhLWcg3w2aOK - Tung
1
谢谢你的回答。不幸的是,我没有使用ggplot的经验,所以我更愿意坚持使用lattice。 - turbo_m
没问题,但请查看 http://www.ggplot2-exts.org/gallery/,看看是否可以利用各种插件包来扩展 ggplot2 的功能。 - Tung
我想我会尝试使用ggplot。谢谢回复。 - turbo_m
1个回答

2

我认为可能已经完成了... 试试这个:

  1. 使用extraFonts加载字体集。在这个例子中,我将使用Old Standard字体(https://fonts.google.com/specimen/Old+Standard+TT?selection.family=Old+Standard+TT),因为我找不到LM Roman的真正类型。

    # 只需执行一次! library(extrafont) font_import(pattern = "Old*", path = "C:/Downloads/Old_Standard_TT")

  2. 接下来加载字体(每次使用extraFont时都要执行)

    library(extrafont) loadfonts(device = "win")

  3. 更改lattice中的par.settings:

`

library(lattice)


dataframe <- data.frame(d1 = rnorm(100), d2 = rnorm(100))

font.settings <- list(
  font = 1,
  cex = 1,
  fontfamily = "Old Standard TT")


my.theme <- list(
  par.xlab.text = font.settings,
  par.ylab.text = font.settings,
  axis.text = font.settings,
  sub.text = font.settings,
  add.text = font.settings)

my.key <- list(
  space="bottom",
  columns=3,
  lines=list(pch=c(19,1,15),  size = 7,type=c("p")),
  text = list(c("text1", "text2", "text3")),
  fontfamily = "Old Standard TT")

xyplot(data=dataframe,
       d1~d2,
       par.settings=my.theme,
       key=my.key)




`

lattice output with fonts

https://r.789695.n4.nabble.com/color-and-fontfamily-in-lattice-td877556.html

如何在保存为PDF时,使R绘图使用拉丁现代字体族?


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接