首页 > 解决方案 > ruby on rails中的融合图不显示图表

问题描述

我正在实施fusiongraphsRails 应用程序。

我按照https://www.fusioncharts.com/ruby-on-rails-charts/上的说明进行操作

我没有收到错误,我只有一个空白的“图表”。

我所有的代码基本上只是从指导页面复制/粘贴。

我按照说明将 Js 文件添加到了vendor/assets/javascripts/fusioncharts/

app/assets/javascript/fusioncharts/当上述方法不起作用时,我还将 Js 文件添加到。

这是我的index.html.erb

<h3>My Chart</h3>
<%= @chart.render() %>

在我拥有的控制器中。

class FusionsController < ApplicationController
 def index


@chart = Fusioncharts::Chart.new({
    width: "600",
    height: "400",
    type: "mscolumn2d",
    renderAt: "chartContainer",
    dataSource: {
        chart: {
        caption: "Comparison of Quarterly Revenue",
        subCaption: "Harry's SuperMart",
        xAxisname: "Quarter",
        yAxisName: "Amount ($)",
        numberPrefix: "$",
        theme: "fint",
        exportEnabled: "1",
        },
        categories: [{
                category: [
                    { label: "Q1" },
                    { label: "Q2" },
                    { label: "Q3" },
                    { label: "Q4" }
                ]
            }],
            dataset: [
                {
                    seriesname: "Previous Year",
                    data: [
                        { value: "10000" },
                        { value: "11500" },
                        { value: "12500" },
                        { value: "15000" }
                    ]
                },
                {
                    seriesname: "Current Year",
                    data: [
                        { value: "25400" },
                        { value: "29800" },
                        { value: "21800" },
                        { value: "26800" }
                    ]
                }
          ]
    }
})



 end
end

这是我的 application.js 文件

//= require fusioncharts/fusioncharts
//= require fusioncharts/fusioncharts.charts
//= require fusioncharts/themes/fusioncharts.theme.fint
//= require rails-ujs
//= require turbolinks
//= require_tree .

更新

在日志中有此消息。

Uncaught Error: #03091456 chartobject-1.render() Error >> Unable to find the container DOM element.
    at C.core.render (fusioncharts.self-5632b79980c9442dbaf0af7af73571de800f2f3be1911577fd5b5e629b15b44e.js?body=1:78)
    at Function.<anonymous> ((index):45)
    at fusioncharts.self-5632b79980c9442dbaf0af7af73571de800f2f3be1911577fd5b5e629b15b44e.js?body=1:48

这是错误消息的屏幕截图:

在此处输入图像描述

任何人都可以帮助我解决这个问题,我整个上午都在解决这个问题,但没有运气。

标签: javascriptruby-on-railsruby-on-rails-5fusioncharts

解决方案


你错过了一行,你需要在你的 index.html.erb 文件中添加这一行

<div id="chartContainer"><%= @chart.render() %></div>

推荐阅读