我有以下数据框,其中我根据年龄和性别预测y:
df = data.frame(
age = c('old', 'old', 'young', 'young'),
gender = c('male', 'female', 'male', 'female'),
y = 1:4)
和相应的图形:
ggplot(df, aes(x=age, y=y, fill = gender)) +
geom_col(position = 'dodge')
我想控制图例框的外观。特别是,我希望将整个框向右对齐(而不是向左对齐)。因此,按键图例应出现在框的右侧,而左侧应是标签。
我知道theme()函数的legend.text.align参数,但它仅控制键及其对应标签之间的距离。
关于如何反转对齐的任何想法吗?
答案 0 :(得分:2)
您可以使用guide_legend(label.position = ...
来调整标签位置,标签等。
ggplot(df, aes(x=age, y=y, fill = gender)) +
geom_col(position = 'dodge') +
guides(fill = guide_legend(# title.hjust = 1, # adjust title if needed
label.position = "left",
label.hjust = 1)
有关更多信息:https://ggplot2.tidyverse.org/reference/guide_legend.html