【发布时间】:2012-05-08 16:07:36
【问题描述】:
我有以下数据框:
id variable value
ID1 1A 91.98473282
ID1 2A 72.51908397
ID1 2B 62.21374046
ID1 2D 69.08396947
ID1 2F 83.39694656
ID1 2G 41.60305344
ID1 2H 63.74045802
ID1 9A 58.40839695
ID1 9C 61.10687023
ID1 9D 50.76335878
ID1 9K 58.46183206
我正在使用 ggplot2 生成带有数据的热图:
ggplot(data, aes(variable, id)) +
geom_raster(aes(fill = value)) +
scale_fill_gradient(low = "white",
high = "steelblue")
剧情如下: http://dl.dropbox.com/u/26998371/plot.pdf
我希望瓷砖在 y 轴上填充绘图空间,而不是在上方和下方留出空间。
我确信有一个简单的答案。任何帮助将不胜感激。
scale_y_discrete(expand = c(0, 0)) 不适用于 y 轴,但 scale_x_discrete(expand = c(0, 0)) 将适用于 x 轴以填充绘图空间。
【问题讨论】:
-
看起来
geom_raster(hpad=0, vpad=0)是为了做你想做的事,但我测试了它,它对情节没有影响。也许它还没有实现? -
只是为了好玩 :-),尝试
scale_y_discrete(expand = c(-1, -1))或其他一些值,看看是否/如何调整 y 比例。确保您在绘图空间与绘图窗口边距等方面没有遇到其他限制。 -
试过 scale_y_discrete(expand = c(-1, -1))。没有运气。