2017-08-31 125 views
0

我图GGPLOT2轴:如何用scale_x_reverse scale_x_continous

ggplot(data=data, x=x, y=y, fill=factor(c)+ geom_path()+geom_errorbar()+ geom_point() 

联合,我想绘制y.axis逆转,使用

scale_y_reverse() 

而定义它的极限,休息,标签和扩展。

通常使用:

scale_y_continuous(limits=c(x,y), breaks=c(x,y,z), labels=c(x,y,z), expand(x,y)) 

井,显然

scale_y_reverse() 

和 scale_y_continous() 以某种方式视为相同代码!?当我收到一个错误时,说:

“y'的比例已经存在,为'y'添加另一个比例,它将替换现有的比例 。

我发现一个帖子说,这是可能的组合两个命令,因此我想:

scale_y_reverse(limits=c(x,y), breaks=c(x,y,z), labels=c(x,y,z), expand(x,y)) 

这也不起作用。

我确信必须有一种方法,像往常一样,我认为它很简单..一旦你知道。

我希望有人知道如何解决这个问题。

此致

回答

1

的曲线图(y轴,x轴,颜色等)中的每一个审美属性只接受单个标度。如果您指定2个比例,例如scale_y_continuous()其次是scale_y_reverse(),第一个比例被覆盖。

您可以在scale_y_reverse()中指定限制,中断和标签,只需省略scale_y_continuous()即可。

例子:

d <- data.frame(a = 1:10, b = 10:1) 

ggplot(d, aes(x = a, y = b)) + 
    geom_point() + 
    scale_y_reverse(
    limits = c(15, 0), 
    breaks = seq(15, 0, by = -3), 
    labels = c("hi", "there", "nice", "to", "meet", "you") 
    ) 
+0

谢谢@DMC为快,尤其是漂亮的响应! – Rrrrrrrrrrr