0

我正在使用带有 ruby​​ on rails 的 highcharts 3.0.1。

基本上我终于有了这个javascript(在ajax/remote请求中):

var chart = $('#my_bar_div').highcharts();
chart.xAxis[0].setCategories(["cat1", "cat2", "cat4"]);
chart.series[0].setData([6.0,7.0,8.0]);

红宝石版本_updatechart.js.erb:

var chart = $('#my_bar_div').highcharts();
chart.xAxis[0].setCategories(<%= @qids.to_s.html_safe %>);
chart.series[0].setData(<%= @average_values.to_json %>);

我要从 6 到 3 个类别/行返回,我使用垂直柱形图:

@bar = LazyHighCharts::HighChart.new('column') do |f|
  f.series(:name=>'Punkte',:data=> @average_values )   
  f.title({ :text=>"Auswertung Fragen " + @theobjects.name })

  ###  Options for Bar
  f.options[:chart][:defaultSeriesType] = "bar"
  f.plot_options({:series=>{:stacking=>"normal"}, :bar => { :dataLabels => { :enabled => true }}})
  f.options[:xAxis] = {:plot_bands => "none", :title=>{:text=>""}, :categories => @qids}
  f.options[:yAxis] = {:title => { :text =>'Punkte', :align =>'high'}, :labels => { :overflow => 'justify' } }
end

它会调整类别的大小,但不会重绘列,我几乎尝试了所有方法都没有成功。

也许你有什么想法?

谢谢,帕特里克

4

1 回答 1

0

固定示例:http: //jsfiddle.net/BCryP/4/

1) "plotBands": "none"-> 删除它或使用 {}

2) 使用相同的变量名:

var chart;
$(document).ready(function () {
    var chart = new Highcharts.Chart(options);
    jQuery("#button").on("click", function () {
        chart.xAxis[0].setCategories(["Wie geht es?", "How is your mam?"], true);
        chart.series[0].setData([5.5, 6.0], true);
    });
});
于 2013-05-23T09:59:15.977 回答