我试图用颜色填充情节曲线下的区域。这是我的数据:
WOL EB1 EB2 EB3
-4 -9.61818 5.38182 15.38182
-3 -11.75152 3.24848 13.24848
-2 -13.01212 1.98788 11.98788
-1 -16.16364 -1.16364 8.83636
1 -33.8606 -18.8606 -8.8606
2 -27.897 -12.897 -2.897
3 -25.4242 -10.4242 -0.4242
4 -23.09697 -8.09697 1.90303
5 -21.01212 -6.01212 3.98788
6 -18.73333 -3.73333 6.26667
7 -16.45455 -1.45455 8.54545
8 -16.06667 -1.06667 8.93333
9 -15.193939 -0.193939 9.806061
10 -14.175758 0.824242 10.824242
11 -12.13939 2.86061 12.86061
12 -11.84848 3.15152 13.15152
我的代码是:
cord.x <- c(eb$WOL)
cord.y <- c(eb$EB1)
polygon(cord.x,cord.y,col='red',border = NA)
但这填补了上面的区域,我找不到办法去做下面的区域。 我也尝试了情节包但没有成功。 我希望有三条曲线(WOL~EB1; WOL~EB2;和WOL~EB3)和三个不同颜色的相应区域。
你能帮忙吗? 非常感谢, PHUONG答案 0 :(得分:2)
您可listSum
使用gather
,然后使用dplyr
:
ggplot
更新(根据评论)
默认情况下,require(tidyverse)
df %>%
gather(iv, value, -WOL) %>%
ggplot(aes(x=WOL, y=value)) +
geom_area(aes(fill=iv))
有geom_area()
,这可能会使y轴上的值变形。您可以使用position="stacked"
代替position="dodge"
代替geom_polygon()
,以获得不同的效果:
<强> geom_area(位置= “躲闪”)强>
df %>%
gather(iv, value, -WOL) %>%
ggplot(aes(x=WOL, y=value, fill=iv)) +
geom_area(position=position_dodge(0), alpha=.7)
df %>%
gather(iv, value, -WOL) %>%
ggplot(aes(x=WOL, y=value, fill=iv)) +
geom_polygon()
答案 1 :(得分:0)
我认为您可以在R中使用 1 2 3 4 5 6 7 8
mon 4CCI02 FR 5CS01 so on
5 42 29
Tue MC03
48
Wed so on
包来实现您的要求。以下是产生下图的代码(我相信你正在寻找的是:阴影下面积为阴影的曲线):
ggplot2
答案 2 :(得分:0)
如果你想要交互式情节(你提到plotly
),这是一个使用highcharter
包的解决方案
library(tidyverse)
library(highcharter)
eb <- read.table(text = "WOL EB1 EB2 EB3
-4 -9.61818 5.38182 15.38182
-3 -11.75152 3.24848 13.24848
-2 -13.01212 1.98788 11.98788
-1 -16.16364 -1.16364 8.83636
1 -33.8606 -18.8606 -8.8606
2 -27.897 -12.897 -2.897
3 -25.4242 -10.4242 -0.4242
4 -23.09697 -8.09697 1.90303
5 -21.01212 -6.01212 3.98788
6 -18.73333 -3.73333 6.26667
7 -16.45455 -1.45455 8.54545
8 -16.06667 -1.06667 8.93333
9 -15.193939 -0.193939 9.806061
10 -14.175758 0.824242 10.824242
11 -12.13939 2.86061 12.86061
12 -11.84848 3.15152 13.15152",
header = TRUE)
eb %>%
gather(iv, value, -WOL) -> eb_long
str(eb_long)
#> 'data.frame': 48 obs. of 3 variables:
#> $ WOL : int -4 -3 -2 -1 1 2 3 4 5 6 ...
#> $ iv : chr "EB1" "EB1" "EB1" "EB1" ...
#> $ value: num -9.62 -11.75 -13.01 -16.16 -33.86 ...
hchart(eb_long, "polygon", hcaes(x = WOL, y = value,
group = iv,
color = iv,
fill = iv))
由reprex package(v0.2.0)创建于2018-05-22。