1

高图有问题。我有带有日期数据(借方,月份)的系列,并想要绘制它。我可以绘制数据(仅限借方),但是当我想添加日期时间时,有两个问题:

  • x_axis 数据显示错误 (00:00:00.00)(00:00:00.00),预计月-年 (08/2012)
  • 工具提示告诉我“日期无效”
def index
    @ops = getConstantOps()
    @js_data = []
    @ops.each { |f|
      tmp = [f.date_operation,f.debit]
      @js_data.push(tmp)
    }
    @h = LazyHighCharts::HighChart.new('graph') do |f|
        f.options[:chart][:defaultSeriesType] = "area"
        f.x_axis({:type =>'datetime'} )
        f.series( :name=>'Ops', :data=>@js_data)
end

Ruby 调试(@js_data) 说

{--- !ruby/object:LazyHighCharts::HighChart
collection_filter: 
data:
- :name: Ops
  :data:
  - - 2010-07-08
    - 387.0
  - - 2010-08-09
    - 476.0
  - - 2010-09-08
    - 443.0}

所以我不需要使用“pointInterval”和“pointStart”,因为有几个月我没有任何 Ops。这就是为什么我需要一个二维数组作为数据参数。我正在测试 ruby​​/highcharts 组合来构建公司应用程序,但在这两个工具上却是全新的。

关于如何使这项工作的任何想法?

编辑 2012 年 11 月 11 日:经过几个小时的工作,它起作用了!我做了一个帮手来做废话。

解决方案 :

def getTimestamp(dateTime)
    return (DateTime.parse(dateTime.year.to_s + '-' + dateTime.month.to_s + '-01')).to_i * 1000
end

对我来说它看起来很脏(2 次施法,dans hard day param)。但没有找到更清洁的方法。如果你有一个,请建议;)。

4

0 回答 0