0

ハイチャートチャートをプロットしようとしています。x軸にデータタイム、y軸にカウントしたいと思います。私がこれまでに持っているもの:

series: [{
name: 'Success',
pointInterval: <%= 1.day * 1000 %>,
pointStart: <%= DateTime.strptime(params[:start_date], '%m/%d/%Y').at_midnight.to_i * 1000 %>,
data: <%= ServerStatus.success.find(:all, :select => 'generated_at, count', :conditions => {:generated_at => DateTime.strptime("07/25/2013", '%m/%d/%Y').beginning_of_day..DateTime.strptime("07/25/2013", '%m/%d/%Y').end_of_day}, :order => 'generated_at ASC').to_json %>

生成するもの:

データ: [{"count":2222,"generated_at":"2013-07-25T00:00:00Z"},{"count":65,"generated_at":"2013-07-25T00:00:00Z"} ,{"count":335,"generated_at":"2013-07-25T00:00:00Z"},{"count":320,"generated_at":"2013-07-25T00:00:00Z"},{ "count":156,"generated_at":"2013-07-25T00:00:00Z"}]

ハイチャートが期待する方法でこれをフォーマットするにはどうすればよいですか[datetime, count]

4

1 に答える 1

0

シリーズの定義の前に変数を初期化します。

array_of_records = ServerStatus.success.find(:all, :select => 'generated_at, count', :conditions => {:generated_at => DateTime.strptime("07/25/2013", '%m/%d/%Y').beginning_of_day..DateTime.strptime("07/25/2013", '%m/%d/%Y').end_of_day}, :order => 'generated_at ASC').to_json

次に、シリーズ定義内で、次のようにデータを定義します。

data: <%= array_of_records.map { |record| [record["generated_at"], record["count"]] } %>
于 2013-08-05T05:35:10.087 に答える