2016-08-18 76 views
0

我写了一个简单的morris线性图来捕获在特定时间收集了多少。
的jsfiddle:https://jsfiddle.net/Lvdn7xLa/2/
Morris js code:更改morris线性图中X轴的值

Morris.Line({ 
    element: 'line-example', 
    data: [{ 
    y: '6.30AM', 
    a: 20 
    }, { 
    y: '7.30AM', 
    a: 40 
    }, { 
    y: '8.30AM', 
    a: 60 
    }, { 
    y: '9.30AM', 
    a: 80 
    }, { 
    y: '10.30AM', 
    a: 100 
    }, { 
    y: '11.30AM', 
    a: 120 
    }, { 
    y: '12.30PM', 
    a: 140 
    }], 
    xkey: 'y', 
    ykeys: ['a'], 
    labels: ['Amount collected'] 
}); 

然而time值不是​​出现。一些不相​​关的年份正在出现。如果我改变xkey: 'y', ykeys: ['a']xkey: ['a'], ykeys: 'y',然后我得到这样

Thu Jan 01 1970 05:30:00 GMT+0530 (India Standard Time) 
Amount collected: 6.3 

奇怪的结果怎样才能让时间值将出现在​​?

+0

我不相信你'x'值根据文档是合法的。但我对莫里斯没有任何经验。 –

+0

你的意思是我不能在morris图中使用小数? –

+1

我的意思是说,莫里斯正在寻找以毫秒时间戳(由Date.getTime()返回的形式或以下格式的字符串形式的时间戳: '2012', '2012年1月1日, –

回答

1

添加

parseTime: false 

到您的图表配置。

这将

跳过的X值的时间/日期的解析,而不是把它们作为 等距系列。

否则,你将需要调整你的“X”值要么毫秒或可以分析

含有包含日期​​属性名称的字符串的有效日期/时间字符串(X ) 值。时间戳被接受在毫秒的时间戳形式 (以下格式由Date.getTime()或字符串作为返回:

  • 2012 Q1
  • 2012 W1
  • 2012-02
  • 2012-02-24
  • 2012-02-24 15:00
  • 2012-02-24 15:00:00
  • 2012-02-24 15:00:00.000

http://jsbin.com/walekitori/edit?html,js,output

+0

很酷,非常感谢... –

+0

你是否介意接受这个答案,如果它解决了你的问题?如果不是,我会很乐意尝试帮助其他任何东西。 –

+1

是的,我接受了你的答案 –