Динамическое добавление маркеров масштаба?

Мне было интересно, есть ли способ динамически добавлять маркеры масштаба-x ПОСЛЕ того, как график был визуализирован, возможно, с помощью такой функции:

zingchart.exec('myChart', 'addscalexmarker', {
    type: "line",
    range: 14,
    label: {
        text: "label!! yay!"
    }
}

Кажется, я не могу найти другого способа заставить это работать... Заранее спасибо!


person Brian Corbin    schedule 04.09.2015    source источник


Ответы (1)


Хотя в ZingChart есть множество методов API, позволяющих пользователям изменять различные части диаграммы, не все атрибуты доступны через именованный метод.

Мое предложение состояло бы в том, чтобы использовать метод setdata, который является универсальным методом API для изменения JSON диаграммы. Управление состоянием диаграммы будет внешним по отношению к ZingChart, но обновления будут обрабатываться одним вызовом метода setdata.

   zingchart.exec('myChart', 'setdata',{
     data : myConfig
   });

Рабочая демонстрация: http://demos.zingchart.com/view/BG8SXI4W

Я в команде ZingChart — дайте мне знать, если у вас возникнут дополнительные вопросы.

person mike-schultz    schedule 04.09.2015
comment
эй @mike-shultz, спасибо за ответ! Что касается диапазона, принимает ли он значения, основанные на scaleX? У меня странная проблема, когда фактическое значение не отображает маркер в правильном месте. Для пояснения, я делаю следующее 'versionData.push({type: line, range: [value.startDate], label: {text: value.version}}); });' startDate — число, значение которого присутствует на шкале. В данном случае это 1441727046774 (дата). Это не работает, хотя, когда я использую «15» для диапазона, он появляется ближе к середине. - person Brian Corbin; 08.09.2015
comment
edit- я также делаю zingchart.exec('mainChart', 'setdata', {data: myConfig}); - person Brian Corbin; 08.09.2015
comment
Привет @BrianCorbin, не могли бы вы опубликовать пример проблемы? Возможно, на JSFiddle? - person mike-schultz; 08.09.2015
comment
@BrianCorbin Свойство range принимает значения индекса на основе делений (видимых и невидимых) на диаграмме. 15 на самом деле строится по индексу 15. Если вы добавите свойство valueRange : true к вашему объекту маркера scale-x, он будет отображаться там, где вы ожидаете. fiddle.jshell.net/g1upgLs4 - person mike-schultz; 09.09.2015
comment
Мы обновили документы, чтобы включить динамическое создание маркеров zingchart.com/docs/tutorials/ элементы/маркеры диаграммы - person nardecky; 10.11.2016