Here's my go-to-answer for how to put data into a jsFiddle。基本的には、HTML内の未使用のタグに貼り付けるのが最も簡単です。 bl.ocks.org/blockbuilder.orgは簡単です。
がここにデータを使用してフィドルのフォークがそのようにロードされています: http://jsfiddle.net/gordonwoodhull/bu2ag0f7/17/
私はまた、これらのd3.csv
が混乱しBITRATE
計算が失敗する原因しまったので、列名からスペースを削除する必要がありました。
レンダリングの中に、dim
についての苦情で失敗していた迷子コードもありました。
データが表示されなかった主な理由は、入力グループが使用可能な集約データを生成していなかったためです。あなたのデータは非常に近いので、週ごとに集計するとすべてが集計されます。
これをデバッグする方法は、一つの配列を返すたチャートの初期化の前にブレークポイントまたはにconsole.logを入れて、この場合bitrateWeekMinIntervalGroupMoveとminIntervalWeekBitrateGroupにおいてgroup.all()
の結果を見ていますキーと値のペア。 1つの点で線を描くことはできません。 :)
元々は15分間隔で集計したかったようですが、それではその作業を開始しましょう。
何らかの理由で、クロスフィルタには2つのレベルのアグリゲーションがあり、ディメンションレベルとグループレベルがあります。ディメンションはキーを生成する際に最初に亀裂があり、その後、グループはこれらのキーをさらに細分化します。
min15関数は各タイムキーを15分前にマッピングしますが、15分以上のデータが必要です。それでは、すでに低い解像度にマッピングされていないdateDimension、上のこれらのグループを入れてみましょう:
var minIntervalWeekBitrateGroup = dateDimension.group(min15).reduceSum(function (d) {
return +d.BITRATE
});
var bitrateWeekMinIntervalGroupMove = dateDimension.group(min15).reduce(
...
グレート、今30個のデータポイントがあります。そしてそれは線を引く。
私はドットが少し小さく:) 30個のピクセルで、ラインを見ることが困難であったため。
まだあなたはあまりにも遠くに拡大するとラインがゼロに低下するので機能を減らす(またはどこか)で不具合があるように思われる:範囲チャートは、ラインのより多くを明らかに使用してズーム
しかし、うまくいけば、これはあなたをもう一度動かすのに十分です。あなたのフィドルの
マイフォーク:http://jsfiddle.net/gordonwoodhull/bu2ag0f7/25/
あなたのヘルプは貴重です。あなたの説明、時間、コードの実際の変更については、Gordonに感謝します。 – Dani