【问题标题】:how to set xAxis pointInterval(update: tickInterval) in highcharts如何在 highcharts 中设置 xAxis pointInterval(update: tickInterval)
【发布时间】:2013-04-04 06:53:16
【问题描述】:

我想在 highstock 中设置 xAxis pointInterval。

我正在格式化 xAxis:

xAxis: {
        type: 'datetime',
        labels: {
            formatter: function () {
                var someDate = new Date(this.value);
                return Myfunction(new Date(someDate));
            }
        }
    },

我已经搜索并找到了一些方法,但它们对我不起作用!为了设置一天的pointInterval(24 * 3600 * 1000 //一天),我在添加系列时设置了它:

chart.addSeries({
                name: my name,
                data: my data,
                id: my id,
                type: 'spline',
                pointStart:start date,
                pointInterval: 24 * 3600 * 1000 // one day
            });

但它没有工作。所以我尝试做其他事情:

plotOptions: {
        spline: {
            pointStart: start date,
            pointInterval: 24 * 3600 * 1000 // one day
        }
    },

它也没有工作。

我已经测试过了:

chart.xAxis[0].setCategories([data])

但是这段代码让CPU工作很多,浏览器崩溃了!

其实我见过这些例子。但是当我尝试它们时,它们没有用!

http://jsfiddle.net/larsenmtl/SJSwt/1/

http://jsfiddle.net/gh/get/jquery/1.7.2/highslide-software/highcharts.com/tree/master/samples/highcharts/xaxis/labels-overflow/

请帮帮我!

谢谢

更新:我的数据格式如下:

series: [{
        data: [
            [Date.UTC(2010, 0, 1), 29.9],
            [Date.UTC(2010, 0, 2), 71.5],
            [Date.UTC(2010, 0, 3), 106.4],

例如jsfiddle.net/bahar_Agi/J6H7f

【问题讨论】:

    标签: highcharts highstock


    【解决方案1】:

    Pointstart 仅在您没有为数据指定 x 值或使用类别时才真正适用。由于您已经为每个点指定了 x 和 y 值,您应该像这样在 x 轴上使用 tickInterval 选项:

    xAxis: {
            type: 'datetime',
            labels: {
                style: {
                    fontFamily: 'Tahoma'
                },
                rotation: -45
            },
            tickInterval: 24 * 3600 * 1000
        },
    

    highcharts api 指南在日期时间轴上提到了这一点:http://api.highcharts.com/highcharts#xAxis.tickInterval

    在此示例中,我将 tickInterval 设置为 1 天,这对于您的数据来说可能有点太小,但您可以将其更改为您想要的任何时间间隔。

    【讨论】:

    • 也许您可以发布完整的图表代码和数据以帮助理解问题?
    • 我的样本是这样的:jsfiddle.net/bahar_Agi/J6H7f 我想在 xAxis 中包含所有日期。如果我想拥有它们,我应该使用我认为的类别,但我对分类的 xAxis 有问题!我该怎么办?
    • 我已经更新了我的答案,因为我已经看到了你想要做的事情。
    • 我以为是pointInterval!这是tickInterval!哇...谢谢
    【解决方案2】:

    我认为您想为 xAxis 使用 tickInterval 选项,请参阅:

    xAxis: {
            tickInterval: 24 * 3600 * 1000,
            type: 'datetime',
             labels: {
                style: {
                    fontFamily: 'Tahoma'
                },
    
                rotation: -45
             }
        },
    

    jsFiddle:http://jsfiddle.net/J6H7f/1/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多