ggplot中如何将坐标轴刻度值加粗或放大?求助
解决ggplot2翻转坐标后左侧刻度加粗/放大的问题
你的问题出在两个核心点上:
- 用了
coord_flip()后,坐标轴对应关系反转——原来的x轴(Provincia)变成了现在的左侧y轴刻度,你之前设置的axis.text.x是修改原y轴(现在的顶部x轴),完全没命中目标。 theme_classic()会重置所有主题设置,你把自定义的theme(axis.text.x...)放在它前面,会被直接覆盖,等于白设置。
修正后的代码如下:
ggplot(aes(x = reorder(`Provincia`, pcty), y = value, fill = name)) + geom_col() + scale_fill_manual(values=c("#F76900","#4B0082")) + scale_y_continuous(breaks = seq(0,26,1))+ geom_text(aes(label = paste0(format(round(pct1, digits =1)),"%"), y = pcty), hjust = 1, colour = "white", fontface = "bold") + coord_flip()+ theme_classic()+ # 针对翻转后的左侧y轴刻度(原x轴)设置样式 theme(axis.text.y = element_text(face="bold", size = 15))
关键修改说明:
- 把
axis.text.x改为axis.text.y,对应翻转后的左侧刻度 - 将自定义
theme()放在theme_classic()之后,确保设置不会被默认主题覆盖 - 调整图层顺序,让主题设置逻辑更清晰
这样设置后,左侧的Provincia刻度就会变成加粗、15号大小的样式了。
内容的提问来源于stack exchange,提问作者io_boh
相关产品推荐
相关产品推荐

