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 диаграммы, а также с другими настраиваемыми параметрами.
Надеюсь это поможет!