簡體   English   中英

使用ggplot2用絲帶繪制兩條線

[英]use ggplot2 to plot two lines with ribbons

我有一個帶有公制v和分類變量t的數據框。 我可以將它們繪制成這樣的線條

set.seed(42)
v <- runif(20, min=0, max=100)
t <- sample( LETTERS[1:2], 20, replace=TRUE )

df <- data.frame(v,t)

qplot(1:length(v),v,data=df,geom="line",group=t,color=t)

我想在每條線上添加色帶。 可能有不同的寬度(我將用公式設置)和透明度。 我試圖用“功能區”替換geom但我收到以下錯誤:

qplot(1:length(v),v,data=df,geom="ribbon",group=t,color=t)
Error: geom_ribbon requires the following missing aesthetics: ymin, ymax

如何在一個圖表中繪制兩條線和它們的色帶?

以下是添加功能區的方法。 當然,您可以更改yminymax的公式以滿足您的需求:

ggplot(df, aes(x=1:length(v), y=v, group=t, colour=t)) + 
  geom_ribbon(aes(ymin=v-0.1*v, ymax=v+0.1*v, fill=t), alpha=0.2) +
  geom_line()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM