2016-05-03 5 views
1

私は2つのラインの間の領域をシェードしようとしていましたが、代わりに次のコードはシリーズを別々にシェードしようとしてもラインの下のすべてをシェーディングします。グラフ内のライン間のシェーディングギャップ

dygraph(newdata, main = "Distribution of Average Teacher Experience By Student URM, 
School-Level Data")%>% 
dyRangeSelector()%>% 
dySeries("URM_exp", fillGraph=FALSE)%>% 
dySeries("NonURM_Exp", fillGraph=TRUE)%>% 
dyLegend(show = "follow")%>% 
dyAxis("y", label = "Average Teacher Experience", valueRange = c(12, 15))%>% 

私は過小代表少数派の学生アンダー表さ少数民族と非経験のギャップを表示するために、2本の線の間の陰影領域を持っているしたいと思います。

ありがとうございます。

+0

あなたが再現可能な例を提供することができますか? – MLavoie

答えて

2

上部/下部バーを描画するのにdygraph機能を使用できます(hereを参照)。

データの下限/上限を表す「偽の」新しいシリーズを追加するだけで済みます。あなたのケースでは、シリーズNonURM_ExpURM_expの両方をコピーしています。次に、両方のシリーズを個別にプロットするのではなく、上記のグラフページへのリンクで説明したように、1つのトリプルシリーズをプロットします。このように、陰影付きの領域は、トリプル系列の色でプロットされます(両方のシリーズの境界はまさにそれらの境界であるため)。以下

コード:

library(dygraphs) 

# Some mock data. 
newdata <- data.frame(
    row.names = seq(Sys.Date(), length.out = 10, by = "1 day"), 
    URM_exp = sample(seq(14, 15, 0.01), 10), 
    NonURM_Exp = sample(seq(12, 14, 0.01), 10) 
) 

# Make up some border series. 
newdata$border1 <- newdata$URM_exp 
newdata$border2 <- newdata$NonURM_Exp 

# One single + one triple series do the trick. 
dygraph(newdata, main = "Distribution of Average Teacher Experience By Student URM, School-Level Data")%>% 
    dyRangeSelector() %>% 
    dySeries("NonURM_Exp") %>% 
    dySeries(c("border2", "URM_exp" , "border1")) %>% 
    dyLegend(show = "follow") %>% 
    dyAxis("y", label = "Average Teacher Experience", valueRange = c(12, 15))