
我试图用下面的代码创建一个火山图,但是我想把"0“坐标放在X轴的中间。有什么办法在ggplot中做到这一点吗?
v<-ggplot(exprData.fil,aes(Effect,Effect.sig))+geom_point(aes(colour=Effect.sig),alpha=0.7)+scale_colour_gradient(low="red",high="green")
v+ggtitle(mainTitle)
v+xlab(expression(log[2](bar(After) / bar(Before))))+ylab(expression(-log[10]("p.value"))) 发布于 2014-09-16 16:45:32
添加scale_x_continuous()以设置轴限值:
v <- ggplot(exprData.fil,aes(Effect,Effect.sig)) +
geom_point(aes(colour=Effect.sig),alpha=0.7) +
scale_colour_gradient(low="red",high="green") +
ggtitle(mainTitle) +
xlab(expression(log[2](bar(After) / bar(Before)))) +
ylab(expression(-log[10]("p.value"))) +
scale_x_continuous(limits=c(-12,12), breaks=seq(-12,12,2))另一种选择是使用coord_cartesian(xlim=c(-12,12))。这与scale_x_continuous()之间的主要区别在于,如果您将任何数据摘要添加到绘图中(比如平滑的、平均的、盒子式的)。如果您的轴限值不包括数据值的全部范围,那么使用scale_x_continuous() (或scale_y_continuous())将导致数据摘要操作(不包括摘要中不可见的数据),而coord_cartesian()将包括汇总中的所有数据,无论是否在绘图中可见。
https://stackoverflow.com/questions/25874125
复制相似问题