[英]ggplot2: Reversing secondary continuous x axis
I am trying to reverse the secondary X axis on top of my ggplot. 我试图反转ggplot顶部的辅助X轴。
ggplot(
data=MasterTable, aes(x=Concentration, y=Signal, color=factor(Assay))) +
scale_x_continuous("Chemical 1",
sec.axis = sec_axis(~ . *1, name = "Chemical 2"), scale_x_reverse(limits=c(400,0)))
If you remove the last section of the code ( scale_x_reverse
...) it makes a plot with a secondary that is identical to the bottom X axis. 如果删除代码的最后一部分( scale_x_reverse
...),则会绘制出一个与次X轴相同的图。 I have managed to reverse the bottom axis but this also reverses the top axis. 我设法反转了底轴,但这也反转了顶轴。 I am looking to only reverse the top axis. 我只想反转上轴。
Any help on this would be really appreciated. 任何帮助,将不胜感激。
Thanks! 谢谢!
Here is a possibile solution: 这是一个可能的解决方案:
MasterTable <- data.frame(Concentration=rep(c(0,50,100,200,300, 350, 400),2),
Signal=c(11800,13000,12000,12000,16000,15500,15570,11600,11700,8000,8000,6000,4000,3000),
Assay=rep(1:2,each=7))
library(ggplot2)
# Reverse Signal vector of the blue series (for Assay =1)
MasterTable$Signal[MasterTable$Assay==1] <- rev(MasterTable$Signal[MasterTable$Assay==1])
ggplot(data=MasterTable, aes(x=Concentration, y=Signal, color=factor(Assay))) +
geom_line(lwd=1) + geom_point(size=3) + guides(color='none') +
scale_x_continuous('Chemical 1 (nM)', trans='reverse',
sec.axis = sec_axis(~ 400 - . , name='Chemical 2 (nM)'))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.