#javascript #d3.js #nvd3.js
#javascript #d3.js #nvd3.js
Вопрос:
код
случай «ViewComponent.Web.Chart.stackedAreaChart»:
// Этот фрагмент кода используется для получения данных
var chartData1XYSize = function() {
return nodeData
.map(function(node) {
return {
key : node.fields.name,
values : [ {
x : convertNodeFieldValue(node, 0),
y : convertNodeFieldValue(node, 1),
size : convertNodeFieldValue(node, 2, 1)
} ]
};
});
};
// Этот фрагмент кода используется для получения данных
data = chartData1XYSize();
console.log("<<<<<<<<<<<<<<<<<<<<<<this is the data of stackedAreachart >>>>>>>>>>>>>>")
console.log(data);
chart = nv.models.stackedAreaChart()
.useInteractiveGuideline(true)
.x(function(d) { return d[0] })
.y(function(d) { return d[1] })
.controlLabels({stacked: "Stacked"})
//.interpolate("step")
.showControls(true)
.duration(300)
.clipEdge(true);
chart.xAxis.tickFormat(function(d) { return d3.time.format('%X')(new Date(d)) });
chart.yAxis.tickFormat(d3.format(',.4f'));
chart.legend.vers('furious');
data.forEach(function(d,i){
d.values = d.values.sort(
function(a,b){
return a.t -b.t;
}
);
});
if (preferences.fieldList.length > 0) {
chart.yAxis
.axisLabel(
fieldLabel(preferences.fieldList[0].type))
.tickFormat(
d3
.format(fieldFormat(preferences.fieldList[0].type)));
}
break;
Вывод этого кода
Я не могу создать диаграмму областей с накоплением, как описано в этом примере области с накоплением ссылок
Данные
json={«fieldList»:[{«id»:»cost»,»type»:»money»},{«id»:»actualCost»,»type»:»money»},{«id»:»costOverruns»,»type»:»money»},{«id»:»remainingCost»,»type»:»money»},{«id»:»remainingWork»,»type»:»work»}],»componentIdKey»:»com.projectlibre.graphic.view.ViewComponentConfiguration/node.dashboard/ViewComponent.Web.Chart.stackedAreaChart»,»fieldListKey»:»com.projectlibre.core.поле.Список полей / project.dashboard.stackedAreaChart / FieldList.Chart.stackedAreaChart.budgetCostOverruns»,»zoomIndex»:»2″,»componentId»:»ViewComponent.Web.Chart.stackedAreaChart»}
jsonNodes = [{«uid»:»da788db8-5981-4c78-a39e-9be27195e0fb_4_2″,»id»:1,»summary»:false,»fields»:{«cost»:»5.0308925723E10″,»actualCost»:»4.92707912507E11″,»costOverruns»:»4.42398986784E11″,»remainingCost»:»-4.42398986784E11″,»name»:»Project1″},»intervals»:[{«start»:1.475571051423E12,»finish»:1.476694251423E12}]},{«uid»:»2c53d187-c48e-44c8-aab7-2a091fe11ad0_4_3″,»id»:2,»summary»:false,»fields»:{«cost»:»6.958011879E9″,»actualCost»:»7.09454607E8″,»costOverruns»:»0.0″,»remainingCost»:»6.248557272E9″,»name»:»Project2″},»intervals»:[{«start»:1.475571051791E12,»finish»:1.475657451791E12}]},{«uid»:»4e4edd23-2aaa-44f2-9811-286dfddc5ddd_4_6″,»id»:3,»summary»:false,»fields»:{«cost»:»6.60208339E9″,»actualCost»:»7.01800174E8″,»costOverruns»:»0.0″,»remainingCost»:»5.900283216E9″,»name»:»Project5″},»intervals»:[{«start»:1.475571054669E12,»finish»:1.475657454669E12}]},{«uid»:»c7027329-d68d-493e-a8cf-23f84c8dce28_4_1″,»id»:4,»summary»:false,»fields»:{«cost»:»7.692646964E9″,»actualCost»:»5.78513824748E11″,»costOverruns»:»5.70821177784E11″,»remainingCost»:»-5.70821177784E11″,»name»:»Project»},»intervals»:[{«start»:1.475571051063E12,»finish»:1.476348651063E12}]},{«uid»:»374aefc2-d9d6-4f97-bfae-c5d7618f2672_4_4″,»id»:5,»summary»:false,»fields»:{«cost»:»6.60208339E9″,»actualCost»:»7.01800174E8″,»costOverruns»:»0.0″,»remainingCost»:»5.900283216E9″,»name»:»Project3″},»intervals»:[{«start»:1.475571052612E12,»finish»:1.475657452612E12}]}]
Комментарии:
1. Можете ли вы просто включить примерные данные. Я думаю, что это должны быть d.x и d.y вместо d [0] и d[1]
2. @user3696882 я добавил данные, которые я использую для этой диаграммы с накоплением, я пытался использовать ваше предложение, но не получилось