2

いくつかのデータとチャートを表示する統計ページを作成しようとしています。
チャートは、ユーザーが自分の個人レポートに保存/ドラッグアンドドロップできるように、写真である必要があります。

Ruby用のGruffGraphsを使用してグラフを作成していますが、結果を安全に保護して表示するための最良の方法がわかりません。

私のアイデア/試みのいくつかは次のとおりです。

  1. チャートをファイル(jpg、png)に保存しますか? 問題:データは誰でも利用できます(cronにアクセスできず、時々データを削除できません

  2. ブラウザでレンダリングしますか(IEで動作する必要があります)?

  3. javascript(Raphaël-JavaScriptライブラリ)またはGoogle APIを使用して、PDFレポートを出力します(プラグインまたはgemが必要です)。

  4. send_dataを使用しますか?他のデータを表示する必要があるため、インライン以外の方法で出力しようとしましたが、可能ですか?

助けてくれてありがとう。

4

4 に答える 4

1

面倒ではありますが、生成手順の一部として、いつでも古いエントリを取り除くことができます。これは、cron などの何らかのバックグラウンド ジョブ機能がない場合に必要なことだけです。通常、ファイルの「変更時刻」に基づいてチェックするのが最善の方法ですが、これには画像への古いリンクが壊れてしまうという影響もあります。

キャンバス ベースのアプローチは、サーバーで生成されたイメージよりもはるかに優れています。たとえば、Flotなどを使用してキャンバス ベースのグラフを作成し、IE との互換性のために必要な場所にexplorercanvasを含めます。

于 2010-03-30T17:19:32.613 に答える
0

gruff を使用しましたが、非常に遅く、大量のメモリを消費します。chrats をあまり変更しない場合は、gruff とキャッシュを併用することをお勧めします。ページ キャッシングまたはフラグメント キャッシングhttp:// guides.rubyonrails.org/caching_with_rails.htmですが、Google API を使用することをお勧めします。作業を簡素化するための gem http://rubygems.org/gems/googlechartsがあります。ユーザーがチャートをダウンロードする必要がある場合、グラファエルなどを使用してチャートを作成するのは良い考えではないと思います。

于 2010-03-31T03:07:36.777 に答える
0

すべての入力に感謝します。

画像ソースタグまたはgemでGoogleチャートを直接使用すると思います。

すべての助けをありがとう。

于 2010-04-04T10:36:43.280 に答える
0

私は現在同じことを行っており、グラフのサーバー側での生成を行うために不機嫌を探していました。

コントローラーで画像を生成し、画像を公開画像ディレクトリに書き込み、ビューから画像にリンクするだけです。

とはいえ、グラフは静的な画像であり、もっと動的なものが必要でした.

そのため、Highcharts jQuery プラグイン ( http://www.highcharts.com/ ) を使用してビュー側でチャートを生成することになりました。(ずっといい!)

コントローラーに配列データをビューに渡し、チャートにクライアント側を描画させるだけです。これははるかに優れており、Google の API やフラッシュに縛られることなく、クライアントが Google からも使用されるすべての機能を備えています。

もちろん、すべて意見の問題です!:)

于 2010-03-30T18:53:01.367 に答える