gpt4 book ai didi

ruby-on-rails - 如何使用rails将绘图数据输入到highcharts中

转载 作者:行者123 更新时间:2023-12-04 05:55:46 26 4
gpt4 key购买 nike

我想弄清楚如何将数据值输入到 highcharts 中。首先,我有一个具有许多能量的家庭对象(@home)(能量表由三列组成,即消耗、home_id 和消耗日期)

这是我到目前为止:

<script type="text/javascript">
var chart;
$(function() {
new Highcharts.Chart({
chart: {
renderTo: "consumption_chart",
},
title: {
text: "Consumption - <%= @home.name %>"
},
xAxis: {
type: 'datetime',
},
yAxis: {
title: {
text: "Power"
}
},
series: [{
data: <%= @data_set %>
}]
});
});
</script>

对于数据部分,我得到了这样的所有值
@data_set = @home.energies.collect{|e| e.consumption_date.utc}.zip(@home.energies.collect{|g| g.consumption})

这将返回一组嵌套的数组,如下所示:
[[2012-03-02 09:06:00 UTC, 1200], [2012-04-30 00:00:00 UTC, 1145], [2012-04-30 00:00:00 UTC, 1158], [2012-05-31 00:00:00 UTC, 1145]]

每个嵌套数组都只是 [consumption_date,consume] 的形式。但是这不起作用(图表不呈现任何数据),请有人指出我的错误并告诉我我做错了什么。谢谢

最佳答案

您可以尝试使用惰性 Highcharts gem 吗?这很容易,这样做可以节省您的时间。

https://github.com/michelson/lazy_high_charts

例如
在 Controller 中,

@h = LazyHighCharts::HighChart.new('graph') do |f|
f.options[:chart][:defaultSeriesType] = "area"
f.series(:name=>'John', :data=>[3, 20, 3, 5, 4, 10, 12 ,3, 5,6,7,7,80,9,9])
f.series(:name=>'Jane', :data=> [1, 3, 4, 3, 3, 5, 4,-46,7,8,8,9,9,0,0,9] )
end

在看来,
<%= high_chart("my_id", @h) %>

关于ruby-on-rails - 如何使用rails将绘图数据输入到highcharts中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9536177/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com