Как динамически настроить линейный график графика?

#javascript #jquery #graph #charts #highcharts

Вопрос:

Я хочу показать свои данные в виде линейной диаграммы. Мои ряды данных следующие

Видео % просмотрено Нет людей (Всего : 19) % людей смотрели
0-9 % 1 5
10-19 % 2 11
20-29 % 1 5
30-39 % 4 21
40-49 % 2 11
50-59 % 4 21
60-69 % 1 5
70-79 % 1 5
80-89 % 0 0
90-99 % 3 16

Теперь моя ось X будет «% просмотренных людей «(3-я колонка), начиная с 0, а ось Y будет «% просмотренного видео » (1-я колонка).

Как мне задать данные на графике ? Пробовал Хайчарт, но не смог найти решение. Как на этом изображении ниже

введите описание изображения здесь

Спасибо за вашу помощь.

Комментарии:

1. Пожалуйста, покажите свои попытки .

Ответ №1:

Я не уверен, как бы вам хотелось, чтобы это выглядело. Из вашей таблицы я могу прочитать, что будет две серии (нет людей и % людей, которые смотрели), но на вашем изображении я вижу только одну серию.

Есть множество способов, как мы могли бы это сделать. Во-первых, я предлагаю использовать модуль данных для получения этих данных из CSV-файла (вы можете увидеть его в разделе HTML в демонстрации ниже). Вы можете использовать ось категорий, чтобы отметить процент просмотренных видео.

Демо: https://jsfiddle.net/BlackLabel/ztfxr1ek/

Ссылки на API: https://api.highcharts.com/highcharts/data.csv
https://api.highcharts.com/highcharts/xAxis.categories

 Highcharts.chart('container', {
 chart: {
  type: 'spline'
 },
 xAxis: {
  categories: ['0-9%', '10-19%', '20-29%', '30-39%', '40-49%', '50-59%']
 },
data: {
 csv: document.getElementById('csv').innerHTML
},
plotOptions: {
 series: {
   marker: {
     enabled: false
   }
 }
}
});
 

Комментарии:

1. Будет только одна серия.. Я уже упоминал, какой будет моя ось Y и какая у меня ось X.

2. Как вы собираетесь передавать данные на свою диаграмму? Если вам нужно передать все данные из вашей таблицы, вам нужно будет использовать функцию complete для изменения рядов, которые будут отображаться на диаграмме. Что-то вроде этого: jsfiddle.net/BlackLabel/hp4rfdL9 . Кроме того, есть ли у вас какие-либо конкретные вопросы по созданию диаграммы?

3. Я сделал это по-другому.. установив оба (x,y) последовательно. Спасибо за ваши усилия.