Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 使用Seer在Rails应用程序中按日期绘制新用户图形_Ruby On Rails_Graph_Graphing - Fatal编程技术网

Ruby on rails 使用Seer在Rails应用程序中按日期绘制新用户图形

Ruby on rails 使用Seer在Rails应用程序中按日期绘制新用户图形,ruby-on-rails,graph,graphing,Ruby On Rails,Graph,Graphing,我想使用Seer实现一个滚动图,显示过去7天内每天的新用户 我已安装Seer: 我一直在绞尽脑汁思考如何实施 我已经有了一系列我想要绘制的用户: @users=User.all(:conditions=>{:created_at=>7.days.ago..Time.zone.now}) 看不到实现:data_方法的正确方法,无法通过在日期创建的_将其汇总 有人用Seer做过这样或类似的事情吗 有没有比我聪明的人能够在查看Seer示例页面(链接在上面)后解释这一点?我假设您正在尝试显示最近7天的

我想使用Seer实现一个滚动图,显示过去7天内每天的新用户

我已安装Seer:

我一直在绞尽脑汁思考如何实施

我已经有了一系列我想要绘制的用户:

@users=User.all(:conditions=>{:created_at=>7.days.ago..Time.zone.now})

看不到实现:data_方法的正确方法,无法通过在日期创建的_将其汇总

有人用Seer做过这样或类似的事情吗


有没有比我聪明的人能够在查看Seer示例页面(链接在上面)后解释这一点?

我假设您正在尝试显示最近7天的新用户计数。如果是这样,您可以执行以下操作

控制器代码

# declare a struct to hold the results
UserCountByDate = Struct.new(:date, :count) 

def report
  @user_counts = User.count( :group => "DATE(created_at)", 
                   :conditions => ["created_at >= ? ", 7.days.ago], 
                   :order => "DATE(created_at) ASC"
                 ).collect do |date, count| 
                   UserCountByDate.new(date, count)
                 end

end
查看代码

<div id="chart"></div>

<%= Seer::visualize(
      @user_counts, 
      :as => :column_chart,
      :in_element =>'chart', 
      :series => {
        :series_label => 'date',
        :data_method => 'count'
      },
      :chart_options => {
        :height => 300,
        :width => 100 * @user_counts.size,
        :is_3_d => true,
        :legend => 'none',
        :colors => "[{color:'#990000', darker:'#660000'}]",
        :title => "New users in last 7 days",
        :title_x => 'date',
        :title_y => 'count'
      }
    )
 -%>

:柱状图,
:in_元素=>'chart',
:系列=>{
:series_label=>“date”,
:data_method=>“count”
},
:图表\选项=>{
:高度=>300,
:width=>100*@user\u counts.size,
:是真的吗,
:图例=>“无”,
:colors=>“[{color:'#990000',深色:'#660000'}]”,
:title=>“最近7天的新用户”,
:title_x=>“日期”,
:title_y=>“count”
}
)
-%>

data\u方法
应出现在用作图表输入的数组的每一行中。
ActiveRecord count
方法返回一个散列,该散列被转换为响应
date
count
方法的
struct
数组。我真的很感谢你的帮助。我是那种知道如何完成某件事的人之一,但我缺乏专业培训和经验,这说明当我陷入困境时:-)我会让你知道事情的进展。太棒了……这就解决了。我浏览了你的代码,但需要花一些时间阅读,以确保我完全理解count和collect方法。非常感谢……我真的很感激。