我正在尝试用ggplot2制作一个带有单个变量的平铺图。数据如下所示:
fruit numbers
apples 6
peaches 2
grapes 10
cherries 2
... many more fruit
我可以绘制与x和y变量相同的数据,我可以使用此代码:
p <- qplot(fruit,fruit) + geom_tile(aes(fill=numbers))
输出如下:
上面的情节正是我想绘制的;但是,我需要将数据排列在一个水平的一维图中。如何使用1个变量创建一维水平标题图?
答案 0 :(得分:5)
p <- qplot(fruit," ") + geom_tile(aes(fill=numbers))
答案 1 :(得分:2)
数据集(猜测数据的解释)。诀窍是包含一个虚拟y变量。
pacman_data <- data.frame(
fruit = c("apples", "peaches", "grapes", "cherries"),
numbers = c(6, 2, 10, 2),
dummy = 1
)
这是情节。您可以使用geom_tile
或geom_bar
,唯一的区别似乎是geom_bar
默认情况下会为您提供一小块距离。
p_base <- ggplot(pacman_data, aes(fruit, dummy, fill = numbers)) +
ylab("") +
opts(axis.text.y = theme_blank())
p_base + geom_tile()
p_base + geom_bar()