Ruby on rails 桌子看起来很混乱

Ruby on rails 桌子看起来很混乱,ruby-on-rails,Ruby On Rails,我有这个问题。我认为这很简单,但我就是做不好。 我正在用gruff建立图表。我有一个从第1个月到第12个月的x轴 数据在第09个月和第10个月绘制,但在第08个月和第10个月绘制 def stat1 @yeara = params[:year] @games = Games.find(:all) g = Gruff::StackedBar.new('800x450') g.theme = { :colors => ['#138F6A','#330000','#ff6

我有这个问题。我认为这很简单,但我就是做不好。 我正在用gruff建立图表。我有一个从第1个月到第12个月的x轴 数据在第09个月和第10个月绘制,但在第08个月和第10个月绘制

def stat1
  @yeara = params[:year]
  @games = Games.find(:all)
  g = Gruff::StackedBar.new('800x450')
  g.theme = {
    :colors => ['#138F6A','#330000','#ff6600', '#3bb000', '#1e90ff', '#efba00', '#0aaafd'],
    :marker_color => '#aaa',
    :background_colors => ['#eaeaea', '#fff']
  }
  g.hide_title = true

  @dr = Game.count(:all, :conditions=> ["game_id= ? and DATE_FORMAT(date, '%Y')= ?",1,@yeara], :group => "DATE_FORMAT(date, '%m')", :order =>"date ASC")
  @df = Game.count(:all, :conditions=> ["game_id= ? and DATE_FORMAT(date, '%Y') = ?",2,@yeara], :group => "DATE_FORMAT(date, '%m')", :order =>"date ASC")
# all 12 month a year      
   @full = Hash["01",0,"02",0,"03",0,"04",0,"05",0,"06",0,"07",0,"08",0,"09",0,"10",0,"11",0,"12",0]      
  year = (@dr.keys |@df.keys|@full.keys).sort
  @keys = Hash[*year.collect {|v| [year.index(v),v.to_s] }.flatten]

# Plot data to table
  @dfdr = Array.new
  @dfdr <<  @keys.collect {|k,v| @df[v].nil? ? 0 : @df[v]}
  @dfdr <<  @keys.collect {|k,v| @dr[v].nil? ? 0 : @dr[v]}

# Plot data to graph
  g.data("Adam", @keys.collect {|k,v| @dr[v].nil? ? 0 : @dr[v]}) 
  g.data("Eve", @keys.collect {|k,v| @df[v].nil? ? 0 : @df[v]})
  g.labels = @keys

  g.write("#{RAILS_ROOT}/public/images/game.png")  
  render(:layout => false)
=>[[09,3],[10,1]

@df = Game.count(:all, :conditions=> ["game_id= ? and DATE_FORMAT(date, '%Y') = ?",2,@yeara], :group => "DATE_FORMAT(date, '%m')", :order =>"date ASC")
=>[[10,2]]

试图追查哪里出了问题但没办法了。 请给我指出一点。我希望我能粘贴这张图,但我还没有资格说stackoverflow

谢谢你

好的,明白了

@keys.collect {|k,v| @df[v].nil? ? 0 : @df[v]
@keys是按未排序的顺序排列的,所以只需先排序即可

@keys.sort.collect {|k,v| @df[v].nil? ? 0 : @df[v]
谢谢大家。如果有什么不好的话,我很抱歉

@keys.sort.collect {|k,v| @df[v].nil? ? 0 : @df[v]