Graphiteからメトリックをロードしていますが、地平線チャートにレンダリングされると、グラフスペースの幅全体ではなく、グラフの左側に押しつぶされます。これが私が何を意味するかを示すスクリーンショットです:
そのデータは、私が要求した3時間のウィンドウからのものです。最上位の地平線チャートのグラファイト出力の一部を次に示します。
,1347632400,1347643200,60|892.0,526.0,371.0,1475.0,1234.0 [...] 1250.0,1604.0,1146.0,965.0
画像から見分けるのは難しいですが、それらの値は描かれているものと一致しています。それは彼らがすべてのスペースを取っているわけではないということだけです。
チャートは、CSSプロパティ<div id="#graphs">
のみを持つposition: relative
単純なものに描画されています。width: 1080px;
これがCubismJavaScriptです。
var context = cubism.context()
.step(1e4)
.size(1080); // 3 hours
var graphite = context.graphite("http://graphite.example.com");
var horizon = context.horizon().metric(graphite.metric).height(100);
var metrics = [
"prod.counts.total_stats",
"stage.counts.total_stats",
"dev.counts.total_stats"
]
d3.select("#graphs").append("div")
.attr("class", "axis")
.call(context.axis().ticks(12).orient("top"));
d3.select("#graphs").append("div")
.attr("class", "rule")
.call(context.rule());
d3.select("#graphs").selectAll(".horizon")
.data(metrics)
.enter().append("div")
.attr("class", "horizon")
.call(horizon);
CSSの残りの部分は、株式のデモからほとんどコピーペーストされています。簡潔にするために、これは含めませんが、必要に応じて含めることができます。