在我的 NVD3 linePlusBarChart 中,如果左/右边缘是介于 -1 和 1 之间的小双精度值,则 x 轴标签会消失。请注意,如果左边缘小于 -1 且右边缘大于 1(无论是双精度还是整数),然后标签正确显示。不确定这是否是一个错误。我将获得的实际数据集将包含非常小的双精度值,通常在 -0.1 和 0.1 之间。任何解决此问题的解决方法/建议/帮助将不胜感激。
plnkr http://plnkr.co/edit/nmIpD14S9eNp14mssa8u?p=preview
JSfiddle 在http://jsfiddle.net/1gqc6pb7/12/
$scope.options = {
chart: {
type: 'linePlusBarChart',
height: 500,
margin: {
top: 30,
right: 75,
bottom: 50,
left: 75
},
//.......
x: function (d, i) {
return d.x
},
xAxis: {
axisLabel: 'X Axis',
tickFormat: function (d) {
return d
}
}
}
};
$scope.data = [
{
"key": "Quantity",
"bar": true,
//"values": [[-1.01, null], [0, 4], [0.015, 3], [0.045, 4], [0.065, 1], [0.075, 10], [1.01, null]] // X axis labels show up
"values": [[-0.1, null], [0, 4], [0.015, 3], [0.045, 4], [0.065, 1], [0.075, 10], [0.1, null]] // X axis labels DO NOT show up
},
{
"key": "Bell Curve",
//"values": [[-1.01, null], [0, 4], [0.015, 3], [0.045, 4], [0.065, 1], [0.075, 10], [1.01, null]] // X axis labels show up
"values": [[-0.1, null], [0, 4], [0.015, 3], [0.045, 4], [0.065, 1], [0.075, 10], [0.1, null]] // X axis labels DO NOT show up
}
].map(function (series) {
series.values = series.values.map(function (d) { return { x: d[0], y: d[1] } });
return series;
});