#input #limit #anychart
#ввод #ограничение #произвольная диаграмма
Вопрос:
Максимальное количество данных на экране — 31 точка смещение. На моем входе у меня 50 баллов. Как установить больше?
Код JavaScript и более подробная информация здесь
Пример Похоже, что ваш пост в основном состоит из кода; пожалуйста, добавьте еще несколько деталей.
AxisX — это дни, проблема здесь
//array
arr = []
for (let i = 0; i < 50; i ) {
arr.push(i)
}
//object x y
const data = []
const time = new Date().getTime();
const oneDay = 1000*60*60*24
for (let i = 0; i < arr.length; i ) {
const day = new Date( time ( oneDay * (i 1) ) );
const currentDate = day.getDate()
data.push( {
x: 'day: ' currentDate,
y: arr[i]
} );
}
// create line chart
chart = anychart.line();
// set chart padding
chart.padding([5, 5, 5, 5]);
// turn on chart animation
chart.animation(false);
// turn on the crosshair
chart.crosshair(false);
// set chart title text settings
const name = 'Name'
chart.title(name);
// set y axis title
chart.yAxis().title('Price');
chart.xScale()
var series;
series = chart.line(data);
series.name('series name');
series.labels().enabled(true).anchor('right-bottom').padding(2);
series.labels().enabled(true).anchor('left-bottom').padding(2);
series.markers(true);
// turn the legend on
chart.legend().enabled(true).fontSize(11).padding([0, 0, 10, 0]);
chart.container('chartContainer');
chart.draw();
Комментарии:
1. Можете ли вы предоставить полный код конфигурации диаграммы и точные данные? Предоставленный вами код не соответствует результату на скриншоте. Код с линейным массивом в данных дает следующий результат — игровая площадка. anychart.com/gdb88sP6
2. я обнаружил проблему, если я отправляю данные в дни AxisX, в дни изображений просто копирую прошлое
3.
arr = [] for (let i = 0; i < 50; i ) { arr.push(i) } const data = [] const time = new Date().getTime(); const oneDay = 1000*60*60*24 for (let i = 0; i < arr.length; i ) { const day = new Date( time ( oneDay * (i 1) ) ); const currentDate = day.getDate() data.push( { x: 'day: ' currentDate, y: arr[i] } ); }
Ответ №1:
Это происходит потому, что вы используете декартову диаграмму, для которой по умолчанию XScale является порядковым номером. Порядковая шкала работает с категориями, она предполагает, что все категории уникальны. Но ваш набор данных включает в себя категории удвоения, такие как day: 19
, day: 20
, и т.д. Таким образом, следующая точка с тем же именем категории переопределяет предыдущую. В вашем случае вы должны использовать масштаб даты и времени и реальные координаты даты и времени X (строковая дата, временная метка в мс, объект класса даты). Подробности см. в статье.