我是 RoR 的新手,我希望使用 amcharts 在我的 Ruby on Rails 应用程序(我使用 rails -v 3.2.2 和 amcharts JavaScript Charts -v 2.6.5)中创建一个图表,该图表来自我的数据库。Amcharts 不再使用 flash(现在他们只使用 Javascript/HTML5),所以我发现的集成教程适用于旧版本的 amcharts。
我的第一个问题是(高级理解问题) - 我是否需要使用 XML 或 .CSV 文件将数据库中的数据加载到图表中,或者我可以只在 javascript 中使用嵌入的 ruby 吗?
我的第二个问题 - 有人知道如何在 Ruby on Rails 中实现从数据库中提取数据的 amchart 图表的任何教程或示例代码吗?
例如:
如果我想要一个带有国家和价值的饼图。示例数据库表:
create_table "countries", :force => true do |t|
t.string "name"
t.integer "litres"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
这是一个硬编码的图表。我可以使用嵌入式 ruby 使代码从数据库中提取数据而不是硬编码吗?还是我需要制作一个 XML 文件?任何有关如何将数据库中的数据集成到 amcharts javascript 代码中的见解将不胜感激。
<script type="text/javascript">
var chart;
var legend;
var chartData = [{
country: "Lithuania",
value: 260
}, {
country: "Ireland",
value: 201
}, {
country: "Germany",
value: 65
}, {
country: "Australia",
value: 39
}, {
country: "UK",
value: 19
}, {
country: "Latvia",
value: 10
}];
AmCharts.ready(function () {
// PIE CHART
chart = new AmCharts.AmPieChart();
chart.dataProvider = chartData;
chart.titleField = "country";
chart.valueField = "value";
chart.outlineColor = "#FFFFFF";
chart.outlineAlpha = 0.8;
chart.outlineThickness = 2;
// this makes the chart 3D
chart.depth3D = 15;
chart.angle = 30;
// WRITE
chart.write("chartdiv");
});
</script>