如何在direct.label中更改字体大小?

时间:2012-04-03 19:49:12

标签: r ggplot2 font-size

我无法更改direct.label(来自directlabels包)ggplot2图中的fontsize。请参阅下面的可重复示例 - 将标签旋转45度没有问题,使它们变为粗体,衬线和50%透明(下面代码末尾列表中的所有其他参数) - 但我无法控制fontsize。 (我真的不希望它们是25,这只是为了测试....)

我有什么遗漏,或者这是一个错误吗?

library(ggplot2)
library(scales)
library(directlabels)
df <- data.frame(x = rnorm(26), y=rnorm(26), let=letters)
p <- ggplot(df, aes(x, y, color=let)) + geom_point() 
direct.label(p, 
    list("top.points", rot=45, fontsize=25, 
        fontface="bold", fontfamily="serif", alpha=0.5))

2 个答案:

答案 0 :(得分:12)

我想通了,你用cex来改变字体大小。

df <- data.frame(x = rnorm(26), y=rnorm(26), let=letters)
p <- ggplot(df, aes(x, y, color=let)) + geom_point() 
direct.label(p, 
    list("top.points", rot=45, cex=6, 
          fontface="bold", fontfamily="serif", alpha=0.5))
那会给你的, jjj

答案 1 :(得分:3)

这是一种不同的路线,但你会考虑在ggplot2中做到这一切吗?

ggplot(df, aes(x, y, color=let)) + 
       geom_point() + 
       geom_text(df, mapping=aes(x, y, label=let, colour=let), 
       size=5, vjust=-.55, hjust=.55, angle = 45, fontface="bold", 
       family ="serif", alpha=0.5) + opts(legend.position = "none")

这会给你这个,你可以使用size来调整字体大小 enter image description here