1

参照: http://jsfiddle.net/bQHjj/

緑の線に沿って、円は x 軸に垂直に配置されているはずですが、すべてが数ピクセル右に移動しています。

X 軸は、2013 年 5 月 1 日であるはずの最初の目盛りを示していません。

私のx軸設定:

var xAxis = d3.svg.axis().scale(x).ticks(d3.time.days, 1).tickFormat(d3.time.format("%d.%m.%Y"));

graph.append("svg:g")
        .attr("class", "x axis")
        .attr("transform", "translate(0," + h + ")")
        .call(xAxis)
        .selectAll("text")
        .style("text-anchor", "end")
        .attr("dx", "-.8em")
        .attr("dy", ".15em")
        .attr("transform", function (d) {
        return "rotate(-65)"
    });

誰が何が悪いのか教えてもらえますか?

4

1 に答える 1

1

new Date(string)日付の解析関数が正しくありません。明らかに UTC を想定しているため、タイムゾーンが台無しになっているようです。これはうまくいきます:

var format = d3.time.format("%Y-%m-%d");
function getDate(d) {
    return format.parse(d.date);
}

更新された fiddleを参照してください。

于 2013-05-04T18:26:16.407 に答える