Was ist Ihre bevorzugte Art und Weise Diagramme in einer Ruby on Rails Web-Anwendung zu produzieren?

StackOverflow https://stackoverflow.com/questions/87561

  •  01-07-2019
  •  | 
  •  

Frage

Ich möchte einige Kreis-, Balken- und Streudiagramme auf meine Ruby on Rails Web-Anwendung hinzuzufügen. Ich möchte wollen, dass sie attraktive, einfach zu addieren und nicht viel Aufwand einzuführen.

Welche Charting-Lösung würden Sie empfehlen?
Was sind die Nachteile (erfordert Javascript, Flash, teuer, usw.)?

War es hilfreich?

Lösung

Google Charts ist eine ausgezeichnete Wahl, wenn Sie nicht wollen, Flash. Es ist ziemlich einfach für sich allein zu verwenden, aber für Rails, ist es noch einfacher mit der gchartrb gem. Ein Beispiel:

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

Andere Tipps

Wenn Sie keine Bilder benötigen, und erfordern JavaScript absetzen können, könnten Sie eine clientseitige Lösung wie die jQuery-Plugin versuchen flicht .

Ich bin ein Fan von Gruff Graphs , aber

Es erfordert Blitz und ist nicht frei (obwohl preiswert): amCharts .

Ich habe es erfolgreich und wie es verwendet wird. Ich bewerten eine Reihe von Optionen eine Weile zurück und wählte sie. Zu der Zeit war jedoch Google Chart nicht so ausgereift, wie es jetzt zu sein scheint. Das würde ich zunächst prüfen, ob ich jetzt neu zu bewerten war.

Es gibt auch Scruffy . Ich warf einen Blick auf den Code vor kurzem und es schien einfach zu ändern / zu erweitern. Es produziert svg und (durch Umwandlung) png.

Haben Sie versucht, die Google Charts API ? - Web-Service-APIs nicht wirklich kommen viel einfacher. Es ist kostenlos zu benutzen, einfach zu implementieren, und die Karten sehen nicht zu minderwertige.

öffnen Flash Chart II ist eine kostenlose Option, die sehr schöne Ausgabe gibt. Er tut, wie man erwarten würde, benötigen Flash.

Fusion Charts ist noch schöner, aber es ist $ 499. In dieser Forschung, fand ich eine abgespeckte kostenlose Version, die Ihre Bedürfnisse dienen könnte.

I 2. die Abstimmung für flicht . Die neueste Version können Sie einige Animationen und Aktionen ausführen, die ich bisher nur möglich sein, dachte würde über Flash. Die Dokumentation ist fantastisch. Es ist einfach von Hand zu schreiben, aber für einfache Fälle wird es noch einfacher, mit einem Rails Plugin namens Flottille . Sie sollten die Beispiele rel="noreferrer">

Morris.js ist schön und Open Source. Ich möchte es wählen, um highcharts Vergleich. Es gibt ein neues großen Video-Tutorial von Railscasts

Ich habe gerade gefunden Ziya einige wirklich sexy Charts produziert und ist Rails spezifisch.

Die Nachteile sind es Flash verwendet, und wenn Sie die Websites, auf XML zu verknüpfen nicht wollen / SWF Seite kostet $ 50 pro Seite.

[Ich habe auf sie noch nicht entschieden, aber ich wollte es dort werfen, falls die Leute wollen stimmen up]

Ich habe ausführlich in einer Java-Web-Anwendung Fusion Charts verwendet, aber es soll die gleiche Art und Weise von Rails arbeiten, da Sie nur eine Flash-über HTML oder JavaScript eingebunden und die XML-Daten übergeben. Es ist ein Slick-Paket und ihre Unterstützung ist immer sehr positiv reagiert.

Sie sollten einen Blick auf Dmitry Baranovskiy der Javascript Bibliothek mit dem Namen Raphaël .

Google-Chart sind sehr schön, aber es ist keine Schienen einzige Lösung. Sie einfache Verwendung der Programmiersprache Ihrer Wahl, um dynamisch URLs zu erzeugen, die die Daten enthalten und Google kehrt zurück ein schönes Bild mit Ihrem Diagramm.

http://code.google.com/apis/chart/

In den alten Tagen, habe ich beschlossen, meine eigene (mit RVG / RMagick) zu rollen, vor allem, weil Gruff nicht alles hatte ich wollte. Der Nachteil war, dass das Finden und die Beseitigung aller Fehler in der grafischen Darstellung Code ein Schmerz ist. In diesen Tagen Gruff ist meine Wahl, da es wirklich vorwärts gegangen in Bezug auf die Anpassung und Flexibilität.

Die Standard-Gruff templates / Farbauswahl saugt obwohl, so dass Sie Ihre Hände schmutzig für die besten Ergebnisse zu erzielen benötigen, um.

In Bezug auf amCharts , gibt es eine „freie“ Version mit sehr wenigen Einschränkungen, die Flash-Diagramme einschließlich der erzeugt 'Diagramm von amCharts.com' Erwähnung.

Und es ist ein schönes Plugin, ambling , die Sie mit einigen Helfermethoden bietet auf einfache Weise Diagramme in den Ihre Ansichten. Bitte beachten Sie, dass amCharts.com Referenzdokumentation ist immer noch ein Muss, um die Grafik auf Ihre Anforderungen anzupassen.

GoogleCharts und Gruff Charts sind groß, aber manchmal fehlt ihnen einige Funktionen, die ich für mehr wissenschaftliche Plotten benötigen. Es ist ein Juwel für gnuplot, die für einige dieser Situationen hilfreich sein können.

http://rgplot.rubyforge.org/

Ich habe angefangen mit Protovis SVG-Charts mit Javascript zu erzeugen. Mein grundlegender Ansatz in Schienen ist eine Steuerung zu haben, die die Daten zurückgibt als JSON wird kartiert und schöpft es mit einem wenig Javascript und Protovis.

Der einzige Nachteil ist, dass die vollständige IE-Unterstützung (Da es auf SVG basiert) ist derzeit nicht verfügbar gerade aus der Box ... Allerdings gehen aktuelle Patches eine faire Art und Weise IE Unterstützung zu bieten, deren Einzelheiten zu finden sind < a href = "http://code.google.com/p/protovis-js/issues/detail?id=15" rel = "nofollow"> hier .

Ich persönlich bevorzugen JavaScript-basierte Diagramme über Flash. Wenn das in Ordnung ist, auch rel="nofollow">. Ein Rails Plugin ist ebenfalls verfügbar.

Das gchartrb Juwel wird nicht mehr gepflegt, wie es scheint. Der Autor Punkte diesen Edelstein:

Wir tun dies durch Beschuss aus gnuplot die Charts als PNGs Server-Seite zu generieren. Es ist ein bisschen der alten Schule und die Diagramme sind nicht interaktiv, aber es funktioniert und ist zwischenspeicherbar.

(Der andere Grund, warum wir dies tun, ist so können wir genau die gleiche Grafik in der PDF-Version des Berichts setzen).

Dies ist nicht speziell aber RoR, es ziemlich glatt Hafen von Gruff Javascript ist: http: // Bluff. jcoglan.com/

DynaPDF . Hässliche API, aber gut, serverseitige Bildergebnisse. Eigenständiges binär.

FWIW, ich bin kein Fan von der Verwendung von Google-Charts, wenn fit & Finish wichtig ist. Ich finde, dass die Variablen für die Dimensionierung, insbesondere sind unvorhersehbar - das Diagramm hat seine eigene Sache

.

Ich habe noch nicht gespielt mit Gruff / Bluff / etc., Aber für ein höheres Profil Projekt werde ich nicht Google Charts verwenden.

Wenn Sie ziemlich sexy Charts wollen, einfach zu generieren, und Sie können Flash-aktivieren, dann haben Sie sollten auf jeden Fall einen Blick auf maani.us xml / swf-Charts .

Einige XML-Builder dahinter und Sie sind bereit zu gehen.

Fusion ist ein sehr gutes Charting-Produkt. Funktioniert gut mit RoR. Ihre Unterstützung und Foren sind gut. Die kostenlose Version dieses Produkts hat eine begrenzte Anzahl von Charts und Funktionen, aber kein Wasserzeichen.

Ich habe gerade angefangen googlecharts für meine Schienen 3-Projekt mit. Es ist schön und sauber, und scheint das einzige Google Visualization API-basierte Juwel zu sein, die am Leben ist. Andere sind inaktiv und verwenden meist den alten Charts Google api (irgendwo veröffentlichte in den Jahren 2007-2008).

https://github.com/mattetti/googlecharts

D3 hat sich meine bevorzugte Art und Weise große aussehende Diagramme zu Web-Anwendungen hinzufügen. Sie haben ein wenig mroe Arbeit, dass einige andere Rahmenbedingungen zu tun, aber das Aussehen und die Kontrolle überwiegt das.

I SVG in erster Linie verwendet werden, die keine IE8 bedeutet, aber das ist immer weniger ein Problem.

HighChart - Eine Charting-Bibliothek geschrieben in reinem JavaScript

Gems wie highchart-Schienen , lazy-High-Chart macht die Integration mit Schienen leichter

gem 'chart' macht es einfach ChartJS und NVD3 Charts Schienen hinzuzufügen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top