jQuery для настройки TicksRepeat оси X в пользовательском интерфейсе Sheild

У меня есть следующий сегмент кода в пользовательском интерфейсе.

<Axes>
    <shield:ChartAxisY>
        <Title Text="Portfolio Value($)"></Title>
    </shield:ChartAxisY>
    <shield:ChartAxisX TicksRepeat="10" CategoricalValues=""> 
        <Title Text="Portfolio Date"></Title>    
        <AxisTickText></AxisTickText>                   
    </shield:ChartAxisX>
</Axes>

То, что я хочу, это настроить TicksRepeat. Например, у меня есть два значения даты, from date а также to date, если разница составляет один год, TicksRepeat должен быть 12, т.е. в месяцах. Если разница составляет один месяц, то TicksRepeat должен быть в днях. и т.п.

Сможет ли jQuery добиться цели? Я новичок в JQuery. Может кто-нибудь, пожалуйста, помогите достичь этого?

1 ответ

Вы можете использовать Chart API для обновления диаграммы, используя ticksRepeat вариант с Javascript. Просто выберите целевой элемент Chart для выполнения методов API. Ниже приведен код для достижения необходимой вам функциональности.

var chart = $('#chart').swidget(); // your target sheild chart selector

var tickRepeat; // to store the tick repeat value

// Your if condition to check the date difference 
// Based on the diffrence set the value of `tickRepeat`
if(<your-year-conditions>){
 tickRepeat = 12;
}else{
 tickRepeat = <your-days-value>; // replace with your days diff
}

// Call the refresh method on the Chart Object to rerender the chart
// With your new tickRepeat on X Axis as below.
chart.refresh({axisX: {ticksRepeat: tickRepeat }});

Вы можете ознакомиться с подробной документацией API диаграммы, а также с другими настраиваемыми параметрами.

Надеюсь это поможет!

Другие вопросы по тегам