2

I have added a datetime X-axis to my rickshaw graph:

var x_axis = new Rickshaw.Graph.Axis.Time({
   graph: graph,
   timeFixture: new Rickshaw.Fixtures.Time(),
});

However, it doesn't generally give me the format I want. Can I give it a specifier so the datetimes are always in a specified format (i.e. something like d3.time.format(specifier) )?

4

3 に答える 3

2

Lars のリンクされた例に基づいて、次のことを行いました。

var format = function(d) {
    d = new Date(d)
    return d3.time.format("%c")(d)
}
var x_axis = new Rickshaw.Graph.Axis.X({
        graph: graph,
        tickFormat: format,
});

これは機能しているように見えるので、間隔をうまくあける方法を見つける必要があります....

于 2014-02-11T19:56:58.037 に答える
1

フォーマッタは文字列をフォーマットするだけで、間隔は決定しません。間隔とフォーマットを制御するために、独自の「Fixture」を作成できます。たとえば、https://github.com/shutterstock/rickshaw/blob/master/src/js/Rickshaw.Fixtures.Time.jsを参照例。フィクスチャは、間隔 (年、月、日、時間など) とそれぞれの書式設定の 2 つを提供します。必要に応じて同様のフィクスチャ、スペース、およびフォーマットを作成し、x 軸に設定します。

var xAxis = new Rickshaw.Graph.Axis.Time( {
  graph: graph,
  //timeFixture: new Rickshaw.Fixtures.Time()
  timeFixture: new MyOwnTimeFixture()
} );
于 2014-02-21T23:29:50.590 に答える