4

我在尝试生成具有“价格”轴和“量”轴的图表时遇到问题,类似于Highstock 网站上给出的示例。它可以很好地显示成交量轴,但不能显示价格。

在尝试确定问题的原因时,我禁用了音量,并且在这样做时,右上角的“From”和“To”矩形都表示“Invalid Date”,但它们的格式相同,以毫秒为单位的纪元,作为音量。

所以这是我的设置:

chart = new Highcharts.StockChart({
    chart: {
        renderTo: 'container',
        alignTicks: false
    },

    rangeSelector: {
        selected: 1
    },

    title: {
        text: 'Price Graph'
    },

    yAxis: [{
        title: {
            text: 'Prices'
        },
        height: 200,
        lineWidth: 2
    }],

    series: [
            seriesOptions
        ]
});

这是 seriesOptions 的“数据”:

[[1362434092000, 20.3],
[1362434093000, 13.1],
[1362434199000, 7.01],
[1362434200000, 9.4],
[1362434796000, 7.23],
[1362434797000, 22.4],
[1362434798000, 13.1],
[1362434835000, 9.9],
[1362435142000, 9.2],
[1362435399000, 6.4],
[1362435400000, 13.5],
[1362435401000, 24.8],
[1362435453000, 6.4]]

更新

不确定这是否有帮助,但在第 292 行找到,它看起来在这里失败了:

this[a+"Input"].value=xa(c.inputEditDateFormat||"%Y-%m-%d",this[a+"Input"].HCTime);

这里的 HCTime 是未定义的,所以在第 20 行,这里定义了这个函数:

xa=function(a,b,c){if(!s(b)||isNaN(b))return"Invalid date";

希望这可以帮助...

更新 2

使用变量中的信息seriesOptions,我尝试将事物归结为基础,并将系列更新为以下内容:

series : [{
lineWidth : 2,
marker : {
     enabled : true,
     radius : 2
},
shadow : true,
tooltip : {
     valueDecimals : 2
 },
type: 'line',
name : 'Test',
pointInterval : 15 * 1000,
data : [
        [[1362434092000, 20.3],
        [1362434093000, 13.1],
        [1362434199000, 7.01],
        [1362434200000, 9.4],
        [1362434796000, 7.23],
        [1362434797000, 22.4],
        [1362434798000, 13.1],
        [1362434835000, 9.9],
        [1362435142000, 9.2],
        [1362435399000, 6.4],
        [1362435400000, 13.5],
        [1362435401000, 24.8],
        [1362435453000, 6.4]
        ]]
 }]

这有一点不同的结果,我希望可以帮助某人知道问题到底是什么——它也会产生一个空的图形空间,但是“From”和“To”都说“1970 年 1 月 1 日”。当Epoch Converter 网站显示 2013 年 3 月 5 日星期二上午 8:54:52 的正确翻译时,对“无效日期”的改进对我来说仍然没有意义。 - 这是什么意思呢?

更新 3

这个问题已经提出了一段时间,我得到了一个肇事逃逸的-1分,我不知道为什么我应该得到这个分数。因此,为了帮助解释更多,我制作了以下两个屏幕截图:

我希望这会有所帮助......这让我发疯了,我所做的研究表明只是为了确保纪元时间戳以毫秒为单位。

将非常非常感谢对这个谜语的帮助 - 我几乎完成了项目的这个阶段,而且已经很长时间了。

干杯。

4

1 回答 1

0

问题解决了。

主要问题是chart = new Highcharts.StockChart({在脚本中被调用了两次,在每次尝试之前,都会container删除 的内容。在第一次迭代中,它有数据可以使用,第二次,它没有。因此,数据上的 NaN。

第二个问题,seriesOptions它本身就是一个数组,所以我愚蠢地制作了series:一个数组数组。

我确实有一个不寻常的问题是滑块与音量轴重叠,但我会弄清楚的。

于 2013-03-24T12:40:35.063 回答