我在sheild UI中有以下代码段。
<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新手。有人可以帮助实现这一目标吗?
最佳答案
您可以使用Chart API通过Java的ticksRepeat
选项来刷新图表。只需选择目标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 Documentation以及其他可配置选项。
希望这可以帮助!