Untitled

mail@pastecode.io avatarunknown
javascript
2 months ago
1.5 kB
2
Indexable
Never
initScenarioDiscountsChart: (data) => {
            var container = '#js-scenario-summary-chart';

            nv.addGraph(function () {
                var lineChartData = [];

                for (key in data) {
                    var xaxis = [];
                    var discounts = [];

                    for (date in data[key]['dailyDiscounts']) {
                        let dateObject = new Date(date);
                        discounts.push({x: dateObject.getTime(), y: parseInt(data[key]['dailyDiscounts'][date])});
                        xaxis[dateObject.getTime()] = date;
                    }

                    lineChartData.push({values: discounts, key: data[key]['scenarioName']})
                }

                var lineChart = nv.models.lineChart()
                    .options({
                        transitionDuration: 300,
                        useInteractiveGuideline: true,
                        responsive: true
                    })

                lineChart.xAxis.tickValues([])
                    .axisLabel('Data')
                    .tickFormat(function (d) {
                        return xaxis[d];
                    });

                lineChart.margin().left = 40;
                lineChart.margin().right = 40;

                d3.select(container).append('svg')
                    .datum(lineChartData)
                    .call(lineChart);

                nv.utils.windowResize(lineChart.update);

                return lineChart;
            });
        },