我有一个详细说明风速的图表,我希望Y轴上的网格每5(m / s)有一个滴答。 如何设置Y轴网格的密度?
// triggered when data has been loaded via ajax
$graph.on('graph.render', function(e, d) {
var graph, y_axis;
// Fixtures
palette = new Rickshaw.Color.Palette();
graph = new Rickshaw.Graph( {
element: $graph.find('.chart');
width: $graph.innerWidth() - 20,
height: $graph.innerHeight() - 20,
series: [
{
key: 'min',
name: 'Min Wind Speed',
color: palette.color(),
data: d[0].data
} // ...
]
});
x_axis = new Rickshaw.Graph.Axis.Time({
graph: graph,
timeUnit: {
seconds: 600,
formatter: function(d) {
return d.toUTCString().match(/(\d+:\d+):/)[1];
}
}
});
y_axis = new Rickshaw.Graph.Axis.Y( {
graph: graph,
orientation: 'left',
element: $graph.find('.y-axis')
});
});
答案 0 :(得分:4)
您可以通过ticks
设置刻度数,或者通过tickValues
明确显示值:
var yAxis = new Rickshaw.Graph.Axis.Y( {
graph: graph,
tickFormat: Rickshaw.Fixtures.Number.formatKMBT,
//ticks: 5, //static number of ticks, only works
tickValues: [50,100,150,200,250,300,350], // values to use/display
element: document.getElementById('y_axis')
} );
您可以使用ticks
或tickValues
,而不是两者。如果您使用上述tickValues
且最大y值为180
,则y比例仅显示值[50,100,150,200]
,250
及以上将不会显示。如果添加更多具有更高y值的数据,则比例将自动重新缩放并显示您指定的更高值。
有关ticks
和tickValues
的更多信息,请访问D3's SVG axes页。