R语言 相对于图例中的文本垂直调整符号

li9yvcax  于 2023-02-06  发布在  其他
关注(0)|答案(2)|浏览(190)

是否有办法使图例中的符号相对于相应文本的第一行垂直对齐?

plot(table(iris$species))
legend('right',c('A','B','long\ntext'), fill = colors(3))

标签AB与对应的符号垂直对齐,但与第三个标签(单词之间有换行符的long text)对应的符号与该标签的中间对齐。
我更希望符号与标签的第一行对齐(即long)。

q1qsirdb

q1qsirdb1#

最简单的方法是在文本前放置一个空行。这样,文本的第一行将与框对齐:

pie(table(iris$Species), col = palette.colors(3, "Pastel 1"), cex = 2)
legend('right',c('A','B',' \nlong\ntext'), fill = palette.colors(3, "Pastel 1"), 
       cex = 2, box.lty = 0, y.intersp = 0)

watbbzwu

watbbzwu2#

iris <- iris
ggplot(iris, aes(x=Species, fill=Species)) + 
  geom_bar() + 
  scale_fill_manual(values=colors(3), labels=c('A', 'B', 'long\ntext')) +
  theme(legend.position="right", legend.justification=0.5)

相关问题