如何在R图表的图例中更改字体族?

18

我有一个使用基础图形包的图表。对于特定点的标签,我使用

   text(i, MSSAcar$summary[i,7]+.7, qld$LGA[i],
   col='red',  cex=.7, family='serif')

我也在主标题和坐标轴标签的绘图中使用过这个。它们都可以正常显示。

当我添加一个图例时,似乎无法设置字体族名称。

请问是否有人能帮忙解决一下。

谢谢。

1个回答

29

在调用legend()之前,将绘图参数family设置为您想要的值。通过对par()进行显式调用来完成这个操作。这里是一个简单的例子。

x <- y <- 1:10
plot(x, y, type = "n")
text(x = 5, y = 5, labels = "foo", family = "serif")

## set the font family to "serif"
## saving defaults in `op`
op <- par(family = "serif")

## plot legend as usual
legend("topright", legend = "foo legend", pch = 1, bty = "n")

## reset plotting parameters
par(op)

实际上,在第一次调用 plot() 之前,您可以更改 family,并在调用 text() 时省略 family = "serif" 参数。通过使用函数调用中的参数设置是本地的,而通过 par() 设置是全局的。

上述代码生成的结果如下: use of family with legend


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