Gibt es eine gute Diagrammbibliothek für das iPhone? [geschlossen]

127

Ich muss Diagramme in einer iPhone-App, an der ich arbeite, rendern und anzeigen (Balkendiagramme für den Moment, aber möglicherweise werden später weitere Typen benötigt). Ich habe mich ein bisschen umgesehen und es sieht noch nicht so aus, als gäbe es noch wirklich gute, ausgereifte Diagrammbibliotheken für das iPhone. Ich habe auch nach etwas gesucht, das für Cocoa auf dem Mac geschrieben wurde und angepasst werden kann, aber noch nichts großartiges gefunden.

Hat sich schon jemand damit befasst? Irgendwelche Empfehlungen?

Ich habe Core Plot gefunden , aber es scheint sich in einem frühen Entwicklungsstadium zu befinden.

Bearbeiten, um einige Details der Anforderungen hinzuzufügen (wie sie derzeit sind;))

  • Balkendiagramme
  • Horizontale Balkendiagramme
  • Doppelt gestapelte Balkendiagramme
  • Achsenbeschriftungen (einschließlich um 90 Grad auf der y-Achse gedreht)
  • Beschriftungen über jedem Balken im Diagramm
  • Schattierte oder benutzerdefinierte Hintergründe
Mike Akers
quelle
SwiftCharts: github.com/i-schuetz/SwiftCharts Open Source, kostenlos, einfach zu bedienen und anzupassen. Video: youtube.com/watch?v=cyAlKil3Pyk
Ixx
Haben Sie SciChart in Betracht gezogen? github.com/ABTSoftware/SciChart.iOS.Examples . Sehr schnell, flexibel und leistungsstark. Leider nicht Open Source, aber das Team wird hart für Ihr Unternehmen arbeiten.
Dr. ABT
1
Für diejenigen von uns, die von Google kommen, besuchen Sie github.com/danielgindi/Charts
Jakob Egger
Mike, welche Lösung hast du als die beste empfunden?
Daniel Brower

Antworten:

78

Einer der vielen Faktoren, die das Core Plot-Projekt motivierten, war das Fehlen guter Plot- Frameworks auf dem iPhone. Core Plot umfasst auch viele andere Anwendungsfälle, einschließlich Desktop-Systeme. Das Design umfasste jedoch von Anfang an die iPhone-Unterstützung. Es ist nahezu benutzerfreundlich und wird derzeit in mehreren iPhone- und OS X-Anwendungen verwendet.

Bearbeiten 2/10

Core Plot hat einen langen Weg zurückgelegt, seit ich die Zusammenfassung zum ersten Mal veröffentlicht habe. Das Framework verfügt jetzt über Balkendiagramme (einschließlich horizontaler Balkendiagramme, glaube ich), Achsenbeschriftungen (einschließlich Aribrarty-Rotationen) sowie Füllungen und Hintergründe für Diagramme. Ich bin mir bei gestapelten Balkendiagrammen nicht sicher, aber es wäre nicht schwer, der CPBarPlotKlasse, die Balkendiagramme implementiert , etwas hinzuzufügen . Für Anmerkungen gibt es eine CPAnotationKlasse, die Sie in Unterklassen einfügen können, um Ihre Anmerkungen hinzuzufügen, wenn nicht genau die Funktionen vorhanden sind, die Sie benötigen.

Projekt auf Github .

Barry Wark
quelle
1
Einverstanden. Es gibt einige sehr gute wissenschaftlich denkende Cocoa-Programmierer, die daran arbeiten, daher würde ich erwarten, dass es schnell voranschreitet. Die Google-Gruppe hierfür befindet sich unter groups.google.com/group/coreplot-discuss?hl=de . Die Archive sind lesenswert, um zu sehen, wohin die Leute damit gehen.
Brad Larson
1
Ich habe mir Core Plot angesehen und es sieht so aus, als wären Balkendiagramme völlig nicht implementiert. Trotzdem werde ich dieses Projekt im Auge behalten.
Mike Akers
3
In der Zwischenzeit wurden Core Plot viele Funktionen hinzugefügt, darunter Balkendiagramme, horizontale Balkendiagramme, benutzerdefinierte Plotbeschriftungen, abgewinkelte Beschriftungen und Themen (einschließlich benutzerdefinierter Hintergründe).
Brad Larson
1
CorePlot ist in Bezug auf die Funktionen in Ordnung, aber schmerzhaft langsam. Mutli Touch-Interaktionen sind sehr träge. Verdirbt das Erlebnis in einer ansonsten raffinierten iPhone- oder iPad-App total.
ColinE
Hat jemand kürzlich CorePlot verwendet? Was oder wie viel hat es sich seitdem verbessert?
Pier-Luc Gendreau
7

Als kommerzielle Alternative zu CorePlot würde ich empfehlen, ShinobiControls auszuprobieren . Sie haben einige ziemlich gut aussehende Diagramme. Sie haben auch eine sehr gute Leistung und rendern Diagramme mit mehr als 100.000 Punkten bei 60 fps und Multi-Touch-Unterstützung.

Als vollständige Offenlegung arbeite ich für Scott Logic, die Muttergesellschaft von ShinobiControls.

ColinE
quelle
Sieht gut aus, aber habt ihr Pläne, eine Bibliothek für OS X zu entwickeln?
seltsam
4

Ich habe meine eigene Bibliothek namens PowerPlot, die unter einem Modell mit zwei Lizenzen verfügbar ist.

Sie können einfach dem obigen Link folgen, um die Demo-App zu installieren, die mehrere Beispieldiagramme zeigt. Sie können auch die GPL-Version der Bibliothek herunterladen und prüfen, ob sie Ihren Anforderungen entspricht. Mit Ausnahme von horizontalen Balkendiagrammen verfügt es über die erforderlichen Funktionen - insbesondere Balkendiagramme, gestapelte Balkendiagramme, verschiedene Achsenbeschriftungspositionen und -ausrichtungen.

user8472
quelle
3

Ich habe vor ein oder zwei Jahren meine eigene Suche durchgeführt und schließlich meine eigenen Liniendiagrammklassen erstellt, weil ich nichts gefunden habe, das genau so funktioniert hat, wie ich es brauchte. Die beiden wichtigsten sind jedoch SM2DGraphView und GraphX . Ich habe es auch in einem iPhone-Projekt nicht versucht, aber ich weiß, dass SM2DGraphView Open Source ist, sodass Sie es bei Bedarf ändern können.

Ich habe auch überlegt, ein WebView zu verwenden, um eine JavaScript-Grafikbibliothek zu verwenden, aber das ist nur ein Gedanke.

Marc Charbonneau
quelle
HighCharts ist eine ausgezeichnete JavaScript-Grafikbibliothek, fyi.
Basil Bourque
3

Es gibt eine neue, schöne 3D-Bibliothek für Kreisdiagramme. 3D-Diagramme, die Sie mit den Fingern + dem Protokoll drehen und skalieren können, um Informationen über getippte Slices zu erhalten

http://iphone.orpi.pl/?p=20

plusz
quelle
1
Danke für diesen, sieht wirklich toll aus!
Kixorz
3

Ich brauchte eine Radarkarte (oder eine Spinnenwebkarte) und konnte keine finden, also habe ich meine eigene Implementierung vorgenommen:

RPRadarChart

Sie können es verwenden, was immer Sie wollen. Wenn Sie dies tun, lassen Sie es mich wissen! Ich werde langsam weitere Funktionen hinzufügen, wenn Sie etwas Bestimmtes möchten, fragen Sie mich über Github.

JP Illanes
quelle
1

Sie können die Google Chart-API theoretisch zusammen mit einem Cocoa-Wrapper verwenden . Dies könnte eine leichte Lösung sein.

Julien Chastang
quelle
5
Ich habe dies in Betracht gezogen, aber Google Charts funktioniert ohne Internetverbindung nicht.
Mike Akers
1
Link zum Cocoa Wrapper ist tot
Brainray
1

Dieser scheint auch in Ordnung zu sein

s7graphview

(aber nie wirklich versucht).

Yonel
quelle
2
Ich habe dieses verwendet, und es wird funktionieren, aber für sehr einfache Datensätze. Einige der Probleme, auf die ich gestoßen bin, waren die Unfähigkeit, Werte unter Null zu zeichnen, und die Tendenz, nicht ganzzahlige Werte zu runden.
Josh Buhler