円グラフ、棒グラフ、散布図をRuby on Rails Webアプリケーションに追加します。魅力的で簡単に追加してほしいオーバーヘッドはあまりありません。
どんなチャートソリューションがお勧めですか?
その欠点は何ですか(Javascript、Flash、高価などが必要)?
Google Charts は、Flashを使用しない場合に最適です。単体でもかなり簡単に使用できますが、Railsでは gchartrb gemを使用するとさらに簡単です。例:
GoogleChart::PieChart.new('320x200', "Things I Like To Eat", false) do |pc|
pc.data "Broccoli", 30
pc.data "Pizza", 20
pc.data "PB&J", 40
pc.data "Turnips", 10
puts pc.to_url
end
画像を必要とせず、JavaScriptが必要な場合は、jQueryプラグイン flot のようなクライアント側のソリューションを試すことができます。
私は Gruff Graphs のファンですが、外部サーバーに依存しなくても Google Charts も良いです。
それ フラッシュが必要です (安価ではありますが)無料ではありません: amcharts 。
私はそれをうまく使って、それが好きです。私はしばらく前にいくつかのオプションを評価し、それを選びました。しかし、当時、Google Chartsは現在のように成熟していませんでした。今再評価するなら、まずそれを考えます。
Scruffy もあります。私は最近コードを確認しましたが、変更/拡張は簡単に思えました。 svgと(変換により)pngを生成します。
Google Charts API を試しましたか? -WebサービスAPIはそれほど単純ではありません。使用は無料で、実装も簡単で、グラフは見苦しくありません。
Open Flash Chart II は、非常に素晴らしい出力を提供する無料のオプションです。予想通り、Flashが必要です。
フュージョンチャート はさらに優れていますが、499ドルです。これを調査したところ、あなたのニーズを満たす可能性のある 削減された無料バージョン が見つかりました。
flot への投票2回目。最新バージョンでは、以前はFlash経由でのみ可能だと思っていたいくつかのアニメーションやアクションを実行できます。ドキュメントは素晴らしいです。手で書くのは簡単ですが、単純な場合はRailsプラグイン flotilla を使うとさらに簡単になります。) examples page で何ができるかについてのより良いアイデアは、ズームとホバー機能が特に印象的です。
新しいGoogle Visualizationは、Googleグラフよりも種類が多く、見栄えがよく、インタラクティブなグラフを生成するようです。
Morris.js はナイスでオープンソースです。ハイチャートと比較して選びたいです。 Railscasts からの新しい素晴らしいビデオチュートリアルがあります
ZiYa は本当にセクシーなチャートを生成し、Rails固有のものです。
欠点はFlashを使用することであり、サイトをXML/SWFページにリンクしたくない場合は、サイトあたり50ドルかかります。
[まだ決めていませんが、投票したいときのために捨てたいです]
Dmitry Baranovskiy's JavaScriptライブラリ Raphaël をご覧ください。
Java Webアプリケーション内からFusion Chartsを広範囲に使用しましたが、Railsから同じように機能するはずです。 HTMLまたはJavaScriptとXMLデータの受け渡しこれは洗練されたパッケージであり、それらのサポートは常に非常に敏感です。
グーグルチャートは非常にいいですが、Railsのみのソリューションではありません。選択したプログラミング言語を使用して、データを含むURLを動的に生成し、Googleは、チャート。
GoogleChartsとGruffチャートは素晴らしいですが、より科学的なプロットに必要ないくつかの機能が欠けている場合があります。これらの状況のいくつかに役立つかもしれないgnuplotの宝石があります。
昔、私は自分で(RVG/RMagickを使用して)自分でロールすることにしました。これは、主にGruffに必要なものがすべてなかったためです。欠点は、グラフ作成コードのすべてのバグを見つけて削除するのが面倒なことです。最近では、Gruffが私の選択です。カスタマイズと柔軟性の面で本当に進んでいるからです。
ただし、標準のGruffテンプレート/色の選択肢には問題があるため、最良の結果を得るには手を汚す必要があります。
amcharts については、「amCharts.comによるグラフ」の言及を含むFlashチャートを生成する制限がほとんどない「無料」バージョンがあります。
そして、Niceプラグイン ambling があり、ビューにグラフを簡単に追加するためのヘルパーメソッドを提供します。 amCharts.com参照ドキュメント は、要件に合わせてチャートを調整するために依然として必須であることに注意してください。
Gchartrb gemはもう保守されていないようです。著者 points これらの宝石:
個人的には、FlashよりもJavaScriptベースのチャートを好みます。よろしければ、 High Charts もご覧ください。 Railsプラグイン も使用できます。
これは特にRoRではありませんが、JavaScriptへのGruffのかなり洗練されたポートです。 http://bluff.jcoglan.com/
非常にセクシーなグラフを生成しやすく、Flashを有効にできる場合は、必ず maani.us xml/swf charts を確認してください。
その背後にいくつかのXMLビルダーがあれば、準備は完了です。
ChartDirector 。醜いAPIですが、サーバー側の画像結果は良好です。自己完結型のバイナリ。
D は、Webアプリに見栄えの良いグラフを追加するための私のお気に入りの方法になっています。あなたは他のいくつかのフレームワークよりも小さな仕事をする必要がありますが、見た目とコントロールはそれを上回ります。
私は主にSVGを使用しています。つまり、IE8は使用していませんが、それは問題になりつつあります。
gem 'chart'
を使用すると、ChartJSおよびNVD3チャートをRailsに簡単に追加できます。
FWIW、私はフィット感とフィニッシュが重要なときにGoogle Chartを使うのが好きではありません。特に、サイズ変更の変数は予測不可能であることがわかりました-グラフは独自に機能します。
私はまだGruff/Bluff/etc。を使用していませんが、注目度の高いプロジェクトではGoogle Chartを使用しません。
これを行うには、gnuplotをシェルアウトして、サーバー側でPNGとしてグラフを生成します。それは少し古い学校であり、チャートはインタラクティブではありませんが、機能し、キャッシュ可能です。
(これを行うもう1つの理由は、PDFレポートのバージョン)にまったく同じチャートを配置できるようにするためです)。
FusionCharts は非常に優れたグラフ作成製品です。 RoRでうまく機能します。彼らのサポートとフォーラムは良いです。この製品の無料バージョンには、チャートと機能の数に制限がありますが、透かしはありません。
私はRails 3プロジェクトでgooglechartsを使い始めました。それは素晴らしく、きれいで、生きている唯一のgoogle視覚化apiベースのgemのようです。他のものは非アクティブで、ほとんどが古いgoogleを使用していますチャートAPI(2007-2008のどこかでリリースされました)。
HighChart -純粋なJavaScriptで記述されたグラフ作成ライブラリ
highchart-Rails 、 lazy-high-chart のような宝石は、Railsとの統合を容易にします