Обновить файл chart.config.data - PullRequest
1 голос
/ 03 октября 2019

У меня есть вызов ajax, который возвращает некоторые данные. Один вызов возвращает данные для 3 графиков. 1-е 2 легко, поскольку я только помещаю значение данных в текущие данные. Третьи данные возвращаются как

{
  labels: ["0RL_201902_19", "0RL_201906_20", "0RL_201909_21", "2NL_201805_36", "2NL_201805_37", "3NL_201805_37", "3NL_201909_51", "3NL_201909_53", "4NL_201909_53", "4NL_201909_52", "4NL_201805_37", "10NL_201907_49"],
  datasets: [{
    label: "%Distribution",
    backgroundColor: "blue",
    borderColor: "rgba(78, 115, 223, 1)",
    data: [52, 22, 26, 22, 78, 21, 52, 27, 35, 48, 17, 100]
  }]
}

. Мне нужно заменить текущий chart.config.data на приведенный выше результат. Это не работает. Если я возьму приведенный выше результат и добавлю его вручную, он работает, но при назначении в вызов не работает. Любая помощь будет оценена.

Я попытался воссоздать график.

chart = new Chart(ctb, {
  type: 'horizontalBar',
  data: xx,
  options: {}
});

Я попытался установить конфиг

chart.config.data = xx;
chart.update();
$.ajax({
  url: "getstats",
  type: 'GET',
  dataType: 'json',
  success: function(datas) {
    // This ajax call returns data for multiple charts. 

  }
})

1 Ответ

0 голосов
/ 03 октября 2019

Исправлено.

var varbarlables = datas.map(a => a.labels);
var varbardataset= datas.map(a => a.dataval);
var labels = JSON.parse("[" + varbarlables + "]");

var mdata = JSON.parse("[" + varbardataset + "]");

myBarChart.config.data.labels = labels;
myBarChart.config.data.datasets[0].data = mdata;
myBarChart.update();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...