私はプロットグラフを描画するのにcoffeescriptを使用しています。私は以前に条件文の設定について質問を投稿していました。私はこれが今解決されたと信じています。しかし、条件文の1つに使用される変数curr_visibilityは、正しく定義されていないため、私が思うような問題を引き起こしています。グラフプロットは基本的にはこのように動作します。グラフ上の各点には0(不可視)または1(可視)が割り当てられます(この点は、DEM画像を使用してマップからの地形プロファイルである線を描画するために使用されます)。バグ(LV = lastVisibiltyおよびCV = curr_visibility)を示すスクリーンショットを添付しています。変数curr_visibilityはforループ内にあります。私はそれが各繰り返しの後に更新されることを確認する必要がありますが、私はそれが正しく私のfillColor:if条件文の内部で動作するように設定されているかどうかだけではわかりません。コードは2つの空のセット - line = []
とdatasets = []
Plot graph showing the bug. The area between LV and CV should be red for No visibilityCoffeescript:forループの条件変数が正しく宣言されていません
prev_visibility = data[0].visibility
for elem, index in data
curr_visibility = elem.visibility
point = [
index
elem.geometry[2]
]
line.push point
unless prev_visibility is curr_visibility
datasets.push line
line = [point]
prev_visibility = curr_visibility
datasets.push line
line = []
lastVisibility = data[0].visibility
newfillColor = if lastVisibilty == 0 && curr_visibility == 0
"#C90E30"
else if lastVisibilty == 0 && curr_visibility == 1
"#439C32"
else if lastVisibilty == 1 && curr_visibility == 0
"#C90E30"
else
"#439C32"
for set in datasets
line.push
data: set,
lines:
show: true
fill: true
opacity: 0.7
fillColor: newfillColor
lastVisibility = 1 - lastVisibility