Я использую:
- Angular
v.1.3
- Angular-nvd3
v.1.0.5
- D3
v.3.5.16
Я попытался добавить диаграмму с областями стека с конкретным доменом по оси Y и доволен результатом, потому что yDomain и диаграмма работают, но у меня есть небольшая проблема дизайна, которую я хочу решить...
Без домена по оси Y:
Работает правильно, без проблем, но не совсем то, что я хочу:
С доменом по оси Y
В последней ситуации я добавил домен по оси Y:
var maxValue, minValue, margin;
maxValue = Math.max.apply(Math,data[0].values.map(function(o){return o[1];}));
minValue = Math.min.apply(Math,data[0].values.map(function(o){return o[1];}));
margin = 0.1 * (maxValue - minValue);
options.chart.yDomain = [minValue, maxValue+margin];
И теперь это именно то, что я хочу! Я добавил домен... Но я не понимаю, почему ось X и диаграмма скрыты...
Как я могу решить эту проблему дизайна? Почему это происходит?
Спасибо!
Свойства диаграммы:
"chart": {
"type": "stackedAreaChart",
"height": 450,
"margin": {
"top": 20,
"right": 20,
"bottom": 20,
"left": 40
},
"x": function (d) {
return d[0];
},
"y": function (d) {
return d[1];
},
"useVoronoi": false,
"clipEdge": true,
"showControls": false,
"duration": 100,
"useInteractiveGuideline": true,
"xAxis": {
"tickFormat": function (d) {
return d3.time.format("%H:%M")(new Date(d));
}
},
"yAxis": {
"tickFormat": function (d) {
return d3.format(",.2f")(d);
},
},
"zoom": {
"enabled": false,
"scaleExtent": [1, 10],
"useFixedDomain": true,
"useNiceScale": false,
"horizontalOff": true,
"verticalOff": true,
"unzoomEventType": "dblclick.zoom"
}
}