使用R对图形进行着色

时间:2013-10-05 15:34:56

标签: r graph ggplot2

所以我有这个数据

   Time  Average    Test n    se
1    20  5.80000     Exp 9 0.120
2    40  6.10000     Exp 9 0.145
3    60  6.40000     Exp 9 0.188
4    80  6.70000     Exp 9 0.990
5   100  7.00000     Exp 9 0.440
6   120  7.70000     Exp 9 0.320
7    20  8.47000 Control 9 0.500
8    40  9.31700 Control 9 0.880
9    60 10.24870 Control 9 0.900
10   80 11.27357 Control 9 0.330
11  100 12.40093 Control 9 0.456

我使用以下代码绘制它

ggplot(data, aes(x=Time, y=Average, colour=Test)) + 
    geom_errorbar(aes(ymin=Average-se, ymax=Average+se), width=0.2) +
    geom_line() +
    geom_point()

我想在此图中隐藏特定部分。例如,我想将部分从20到30秒。这可以在ggplot2吗?

1 个答案:

答案 0 :(得分:3)

从描述中可能并不清楚你的想法。怎么样:?

ggplot(data, aes(x=Time, y=Average, colour=Test)) + 
  geom_rect(aes(xmin=20,xmax=30,ymin=-Inf,ymax=Inf),fill="pink",colour=NA,alpha=0.05) +
  geom_errorbar(aes(ymin=Average-se, ymax=Average+se), width=0.2) +
  geom_line() +
  geom_point()

Example of vertical shading