Я использую библиотеку C3.js и, когда я хочу динамически добавить одно значение в линейную диаграмму, я вызываю функцию updateChartC3(action, values)
с получает из PHP AJAX
и внутри функции updateChartC3(action, values)
Я называю load()
функция для обновления графика.
Не работает с использованием переменной "values"
(1-й вариант). Во втором варианте работают очень хорошо.
Я хочу работать только с первым вариантом.
var chart = '';
function startChart(columns_, positions, pcs, _height) {
chart = c3.generate({
bindto: '#chart-div',
size: {
height: _height
},
data: {
bindto: '#chart',
columns: columns_,
order: 'asc'
},
zoom: {
enabled: false
},
transition: {
duration: 1000
},
axis: {
x: {
label: {
text: "XKB",
position: 'outer-center'
},
type: 'category',
categories: pcs,
tick: {
centered: true
}
},
y: {
label: {
text: 'Position',
position: 'inner-middle'
},
tick: {
values: positions
},
inverted: true,
allowDecimals: false
}
}
});
}
function updateChartC3(action, values) {
// values = [ [ 'taripeco',18,14,12,'p','p', 'p' ] ]
// 1st option - work
if (action == 'add') {
chart.load({
columns: [
['taripeco', 18, 14, 12, 'p', 'p', 'p']
]
});
}
// 2nd option- doesn't work
if (action == 'add') {
chart.load({
columns: values
});
}
}
Задача ещё не решена.
Других решений пока нет …