2

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 を使用しています。

4

1 に答える 1

2

データセルに追加するテキストは、ほとんどの場合、複数行にまたがっており、「終了していない文字列リテラル」エラーが発生します。

テキストを解析して、すべてを1行にまとめてみてください。または、行ごとにセルを追加します。

于 2010-07-20T12:48:53.533 に答える