【问题标题】:Error caused by string being too big when passed to Google Visualization API传递给 Google Visualization API 时字符串太大导致的错误
【发布时间】:2011-03-17 11:49:38
【问题描述】:

我正在尝试通过Google Visualization API 创建一个WordCloud。您必须创建一个 google.visualization.DataTable 并将字符串添加到表中的单元格。我基本上复制了上面链接的示例,并传入了一个简单的几个单词的字符串(@note.articletext),WordCloud 工作正常。

    <script type="text/javascript">
      google.load("visualization", "1");
      google.setOnLoadCallback(draw);
      function draw() {
        var data = new google.visualization.DataTable();
        data.addColumn('string', 'Text1');
        data.addRows(1);
        data.setCell(0, 0, '<%= @note.articletext %>');

        var outputDiv = document.getElementById('wcdiv');
        var wc = new WordCloud(outputDiv);
        wc.draw(data, {width:300, height:300});
      }
    </script>

但我想根据一篇文章创建 WordCloud,这(显然)是一个非常大的字符串。当我传入一个包含整篇文章的字符串时,我收到以下错误:

unterminated string literal
data.setCell(0, 0, 'There was a da...ne ended with a time-out in his crib.

同样,这个错误在我传入一个小字符串时不会出现,所以它是由字符串的大小引起的。或者可能 google.visualization.DataTable 对单个单元格的大小有限制(虽然我找不到这样的限制)。有谁知道我该如何解决这个问题?感谢阅读。

编辑:如果它很重要,我正在使用 Ruby on Rails。

【问题讨论】:

    标签: visualization google-api data-visualization google-visualization


    【解决方案1】:

    您添加到数据单元格的文本很可能跨越多行,导致“未终止的字符串文字”错误。

    尝试解析文本并将其全部放在一行中。或者逐行添加单元格。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-16
      相关资源
      最近更新 更多