我需要使用TWh中的log10比例将波段堆叠到每个ISO3中。
我生成了以下几行,但没有对数刻度,但对其进行了测试。
代码在这里
> head(exx)
ISO3 band ET TWh
<fct> <int> <dbl> <dbl>
1 AFG 1 37418724. 37.4
2 AFG 2 890119. 0.890
3 AFG 3 554229. 0.554
4 AFG 4 516820. 0.517
5 AFG 5 5773072. 5.77
6 AFG 6 249360. 0.249
exx %>%
ggplot(aes(x = reorder(ISO3, TWh, sum), y = TWh, fill = as.factor(band))) +
geom_bar(stat = "identity") +
theme_bw() +
theme(panel.grid = element_blank()) +
xlab("") +
ylab("") +
guides(fill=FALSE) +
guides(fill = guide_legend(nrow = 3, title = "band")) +
theme(legend.justification = c(1, 0),
legend.position = c(0.995, 0.001),
text = element_text(size = 12)) +
theme(axis.text.x = element_text(size = 10, color="black"),
axis.text.y = element_text(size = 7, color="black"),
panel.grid.major.x = element_line( size=.1, color="grey", linetype = 2 )) +
#here i tested
#scale_y_continuous(trans=log10_trans())+
coord_flip() +
scale_fill_npg()
Here数据
非常感谢您的帮助。 我已经尝试过this answer,但没有用。
#次尝试修改
我已经乘以1000000,然后应用以下内容:
scale_y_continuous(trans=log10_trans(),
#breaks = trans_breaks('log10', function(x) 10^x))+#,
labels = trans_format('log10', math_format(10^.x)))+
得到这个
我现在想在休息时得到原始标签。