相关疑难解决方法(0)

jqPlot DateAxis tickInterval不工作

我正在尝试每月绘制一个带有单个数据点的图表.我在每个月的第一天将这个发送到jqPlot作为单点:

$.jqplot('actualChart', [[['2011-10-01',0.296],['2011-11-01',0.682]]], {
    title: programSelection.options[programSelection.selectedIndex].text,
    axes: {
        xaxis: {
            renderer: $.jqplot.DateAxisRenderer,
            rendererOptions: { tickRenderer: $.jqplot.CanvasAxisTickRenderer },
            tickOptions: { formatString: '%b' }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我正在使用Ajax加载图表数据.一些数据集具有比其他数据集更多的数据点 - 在上面的示例中仅有2个点,x轴刻度('%b'表示仅显示为10月和11月)沿着轴自动渲染,但是经常,例如,九月...十月...十月...十月...十月...十一月 - 沿着显示的线的常规点.我只想在10月初开一个蜱,在11月初开一个蜱.

我花了很多时间搜索,似乎tickInterval是为此做的,但添加

tickInterval: '1 month'
Run Code Online (Sandbox Code Playgroud)

只是让x轴,数据点和线条消失 - 这就是我所指的破碎功能!指定任何其他间隔,例如

tickInterval: '2 days'
Run Code Online (Sandbox Code Playgroud)

也打破了它.

解决方法是手动提供刻度,例如

ticks: ['2011-10-01','2011-11-01']
Run Code Online (Sandbox Code Playgroud)

确实把蜱放在正确的位置,但是

a)是一个不应该被要求的麻烦,并且

b)在图形数据点的任一端丢失漂亮的填充,因此两端的点出现在图形的边缘.当然,除非添加任何一方的手动滴答,但在上面的10月至11月示例中,我不希望在任何一方提供整月,因为有趣的数据仅占用图的中间三分之一.

谁能帮我这个?提前致谢.

编辑 - 找到一个解决方案:为轴提供min属性似乎确实解决了这个问题(无论出于何种原因...... bug?),所以除非有人有任何更好的想法,否则我会这样做!

javascript jquery jqplot

11
推荐指数
3
解决办法
2万
查看次数

标签 统计

javascript ×1

jqplot ×1

jquery ×1