Ruby on rails rails和highcharts中的数组问题

Ruby on rails rails和highcharts中的数组问题,ruby-on-rails,highcharts,Ruby On Rails,Highcharts,在lazy highcharts代码的series部分中,我在显示数组中的数据时遇到问题。“dates”变量在“f.options[:xAxis][:categories]=dates”部分中运行良好,但在“f.series(:type=>'area',:name=>'Degree',:data=>temps,:color=>'#00463f')中为空,我不确定这是为什么 数据来自一个上传的csv文件,我用回形针gem来实现 控制器 def show @soiltemp = Soilte

在lazy highcharts代码的series部分中,我在显示数组中的数据时遇到问题。“dates”变量在“f.options[:xAxis][:categories]=dates”部分中运行良好,但在“f.series(:type=>'area',:name=>'Degree',:data=>temps,:color=>'#00463f')中为空,我不确定这是为什么

数据来自一个上传的csv文件,我用回形针gem来实现

控制器

def show
    @soiltemp = Soiltemp.find(params[:id])
    @data = CSV.open(@soiltemp.csv.path, :headers => true, :encoding => 'ISO-8859-1')
    dates = []
    temps = []
    @data.each do |row|  
     dates << row[1]
     temps << row[2]
    end
    @graph = LazyHighCharts::HighChart.new('graph') do |f|
      f.options[:xAxis][:categories] = dates 
      f.series(:type => 'area', :name => 'Degree', :data => temps, :color => '#00463f' ) 
      f.series(:type => 'spline',:name => 'Average', :data => [3, 2.67, 3, 6.33, 3.33]) 
    end
    end
def显示
@soiltemp=soiltemp.find(参数[:id])
@data=CSV.open(@soiltemp.CSV.path,:headers=>true,:encoding=>ISO-8859-1)
日期=[]
temps=[]
@数据。每个do |行|
日期'Degree',:data=>temps,:color=>'#00463f')
f、 系列(:type=>'spline',:name=>'Average',:data=>[3,2.67,3,6.33,3.33])
结束
结束

Highcharts期待该系列的数字。您正在
temp
数组中传递字符串。使用
行[2]。在建立
temps

时,使用i
(如果它们是整数)是否打印出
temps
值?是的,它可以正常工作,因为它打印出温度列表。所以我很困惑为什么它不会在我的high charts代码中注册。它们是字符串还是数字?数字,但csv不是作为列加载到我的数据库中,而是作为文件加载的。你介意在调用
LazyHighCharts
之前发布
temps.inspect
的值吗?太好了。太感谢你了,彼得。不知道为什么我没有想到这个选择!