我想作图:
我的数据如下:
> head(ranges_example)
labels Minimum Maximum error
1 One -275 -240 1
2 Two -265 -210 1
3 Three -260 -215 1
4 Four -273 -230 1
5 Five NaN -200 1
6 Six NaN -240 1
但是,可惜,我不得不通过修改我在
我是使用geom_linerange
做到的,具体来说:
ggplot() +
geom_linerange(data = ranges_example,
mapping=aes(x = labels, ymin = Minimum, ymax = Maximum,
lwd = 1, color = error, alpha = 0.5),
position = position_dodge(width = 1)) +
scale_y_continuous(c(-240, -300)) +
coord_flip()
图2足以满足 一次-在Illustrator中将其转换为图1可能需要15分钟-但我可能需要再制作一些图。
我之所以不删除position_dodge
语句,是因为它只是将颜色混合在一起,就像这样:
我需要它们成为自己独特的颜色,以便于区分它们。不同的阴影意味着不同的事物,我需要能够轻松地区分和更改它们。
我如何才能开箱即用地创建更像图2的图?
答案 0 :(得分:1)
ggplot() +
geom_linerange(data = ranges_example %>% arrange(-error),
mapping=aes(x = labels, ymin = Minimum, ymax = Maximum,
lwd = 1, color = error)) +
scale_y_continuous(c(-240, -300)) +
scale_color_continuous(high = "lightgreen", low = "forestgreen") +
coord_flip() +
theme_classic()
# Example data
ranges_example <- tribble(
~labels, ~Minimum, ~Maximum, ~error,
"One", -275, -240, 1,
"Two", -265, -210, 1,
"One", -285, -215, 2,
"Two", -275, -190, 2,
"One", -300, -200, 3,
"Two", -290, -180, 3)