2

如何在缩放操作后重新设置刻度的 formatString?

$.jqplot.DateAxisRenderer在“xaxis”上使用插件formatString = "%d.%m",但是当我缩放时,我想%d.%m %H:%M:%S根据新的最小值和最大值来改变它。

4

1 回答 1

5

我想我有东西给你。 有关代码详细信息,请参阅示例。

整个问题归结为DateTickFormatter用以下代码覆盖:

    $.jqplot.DateTickFormatter = function(format, val) {
        if (plot) {
            var noDays = days_between(new Date(plot.axes.xaxis.max), new Date(plot.axes.xaxis.min));
            console.log("days_between = " + noDays);

            if (noDays < 28) format = "%d";
            else if (noDays < 120) format = '%m/%d';
            else format = '%Y/%m/%d';
        }
        return $.jsDate.strftime(val, format);
    };

它将根据可见天数返回不同的格式。使用代码,看看缩放时会发生什么。

于 2012-06-22T14:35:37.127 回答