我在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 dateto 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以及其他可配置选项。

希望这可以帮助!

09-25 19:03