У меня есть задача перейти от morris.js к chart.js, и я пытаюсь сформировать данные для chart.js на основе условных выражений. У меня есть несколько вариантов выбора - источник, показатель, учетные записи и многое другое. Мне нужно сформировать данные в соответствии со значениями этих выборок (множественный выбор), например:
<select id="metric" class="form-control" id="type" multiple="multiple">
<option value="6" selected>first metric</option>
<option value="7">Other metric</option>
<option value="8">Third metric</option>
<option value="9">fourth metric</option>
...
<option value="0">final metric</option>
</select>
Мне нужна линейная диаграмма, поэтому мне нужен массив объектов (наборов данных) для каждого из этих выбранных параметров и цвета для них, идентификатор метрики (значение параметра), дата, потому что даты - это ось Y. Как лучше всего подойти к этому? У нас уже есть API, который возвращает такие данные:
[{"date":"2018-09-15","6":"5925.26","0":5925.26},{"date":"2018-09-16","6":"5920.33","0":5920.33},{"date":"2018-09-17","6":"3251.72","0":3251.72},{"date":"2018-09-18","6":"3375.16","0":3375.16},{"date":"2018-09-19","6":"3499.05","0":3499.05},{"rand":"0.36841474432984667"}]
- предметы на каждый день вместо предметов для каждого предмета. Каждый день могут быть пустые / отсутствующие показатели. Мы подошли к этому, проанализировав выборки с помощью js и назначив индексы на основе значений с именами и создав собственные метки Y и метки X. Этот подход chartjs сильно отличается от того, что мы использовали раньше. Как лучше всего заставить эту работу работать без необходимости переделывать API? У меня проблемы с оберткой вокруг объектно-ориентированного javascript, он сильно отличается от других языков, с которыми я взаимодействовал, и кажется странным, создавая новые объекты, а затем помещая их в массив способом javascript. Какие-нибудь советы? Или несколько примеров того, как это достигается, не зная, какие выборы выбраны и автоматически формируют наборы данных без жесткого кодирования значений / меток?