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
Antworten:
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
CPBarPlot
Klasse, die Balkendiagramme implementiert , etwas hinzuzufügen . Für Anmerkungen gibt es eineCPAnotation
Klasse, 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 .
quelle
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.
quelle
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.
quelle
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.
quelle
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
quelle
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.
quelle
Sie können die Google Chart-API theoretisch zusammen mit einem Cocoa-Wrapper verwenden . Dies könnte eine leichte Lösung sein.
quelle
Dieser scheint auch in Ordnung zu sein
s7graphview
(aber nie wirklich versucht).
quelle