我正在尝试通过绘制导出和导入来显示netexports(exports - imports),并根据netexports是正面还是负面来着色两个系列之间的差异。
使用R:
library(tidyverse)
data <- tribble(
~year, ~exports, ~imports,
#--|--|----
2003, 3, 3.6,
2004, 4, 8.5,
2005, 7, 7,
2006, 9, 7,
2007, 15, 9,
2008, 17, 12,
2009, 7, 8,
2010, 8, 7,
2011, 8, 8,
2012, 7, 9,
2013, 2, 11,
2014, 9, 13,
2015, 5, 15
)
ggplot(data, aes(x = year)) +
geom_ribbon(aes(ymin = imports, ymax = exports))
这让我:
这个系列之间的差异已经有了颜色,但并没有告诉我哪一个更高。
接下来我尝试过:
ggplot(data, aes(x = year)) +
geom_ribbon(aes(ymin = imports, ymax = exports, fill = exports > imports))
哪个收益率:
但这里似乎有些不对劲,我不确定它是什么。
答案 0 :(得分:1)
虽然在值相等的位置没有行,但仍然会失败。根据您的需要,您可以计算它们交叉的2008年到2009年之间的点,并人为地将其添加到数据集中。
data$minval <- pmin(data$imports, data$exports)
ggplot(data, aes(x = year)) +
geom_ribbon(aes(ymin = minval, ymax = exports), fill = "blue") +
geom_ribbon(aes(ymin = minval, ymax = imports), fill = "red")