并非所有的刻度线都显示在nvd3折线图中
我正在尝试创建折线图。并非所有的刻度线都显示在nvd3折线图中
指定ticks:7表示lineChart,但只有6个ticks出现。
这是数据和选项值
this.options = { chart: {
type: 'lineChart',
showYAxis:false,
showLabels:true,
showLegend:false,
reduceXTicks: false,
margin : {
top: 20,
right: 20,
bottom: 40,
left:20
},
x: function(d){ return d.x; },
y: function(d){ return d.y; },
xAxis: {
tickFormat:function(d) {
return d3.time.format('%b %d')(new Date(d));
},
ticks:7
}
}
};
this.data=[
{
values: [
{x: new Date('2015-03-23'),y:10},
{x:new Date('2015-03-24'),y:20},
{x:new Date('2015-03-25'),y:5},
{x: new Date('2015-03-26'),y:10},
{x:new Date('2015-03-27'),y:15},
{x:new Date('2015-03-28'),y:20},
{x:new Date('2015-03-29'),y:40}
],
key: 'Cosine Wave',
color: '#d0021c',
area:true
}
]
见plunker - https://plnkr.co/edit/7zg62ezs730i40U0GTHy?p=preview
任何帮助,将不胜感激。
回答:
我发现的一个解决方法是您使用tickValues设置ticks。
var xAxis = d3.axisBottom(x).tickValues([1, 2, 3, 5, 8, 13, 21]);
https://github.com/d3/d3-axis/blob/master/README.md#axis_tickValues
或者,你可以通过蜱值的指令:
<nvd3-line-chart data="graphData"
xAxisTickValues="xAxisTicks"
</nvd3-line-chart>
,然后在范围:
$scope.xAxisTicks = function(){ return [new Date('2013-12-31'), new Date('2014-1-1'), new Date('2014-1-2')];
}
还要注意这个“嘀论证会如果还没有设置刻度格式,仍然会传递给刻度的tickFormat函数“
以上是 并非所有的刻度线都显示在nvd3折线图中 的全部内容, 来源链接: utcz.com/qa/263190.html