自定义y轴标签在GGPLOT2与数转换坐标
问题描述:
我使用GGPLOT2来绘制出geom_ribbon的礼貌上限和下限一个很好的线图 - 见下:自定义y轴标签在GGPLOT2与数转换坐标
ggplot(data = inflow, aes(x = tt, y = inflow.mean)) + geom_line(size = 1) +
geom_ribbon(eb, alpha = 0.5) + coord_trans(y = "log")
可能有人请指教我怎么能让y轴标签看起来更漂亮?
我想表明:0, 1, 10, 100
等
注:在搜索互联网,它会出现,对于geom_ribbon,coord_trans必须使用具有对数刻度。
答
Jase_ - 我包裹着我的变量如你所说,并用我自己的包裹y轴的标签:
lab <- log(c(0.01, 1.01, 5.01, 10.01, 20.01, 50.01))
names <- c(0,1,5,10,20,50)
ggplot(data = inflow, aes(x = tt, y = inflow.mean)) +
geom_line(size = 1) + geom_ribbon(eb, alpha = 0.5) +
scale_y_continuous(breaks = lab, labels = names)
您不提供您的问题的工作示例,也不是说明了缺乏工作示例的图片。但无论如何:'coord_trans(y =“log10”)'如何解决?或'scale_y_log10()'而不是coord_trans?还要注意:“转换尺度和转换坐标系的不同之处在于尺度转换发生在统计之前,并在之后进行坐标转换。” (来自coord_trans文档)。 – ROLO 2012-07-20 10:19:01
你有看看[这个答案](http://stackoverflow.com/a/9223257/893243?)。你也可以用'log(inflow.mean)'包装'inflow.mean'。如果这不能解决您的问题,您将不得不提供有关您的数据的更多信息。 – 2012-07-20 10:25:40
谢谢大家。我从那以后找到了一个有效的解决方案。 Jase_ - 我按照你的建议封装了我的变量,并使用我自己的包装的y轴标签:lab mjburns 2012-07-20 11:29:36