Is there a good charting library for iPhone?

64,209

Solution 1

One of the many factors that motivated the Core Plot project was the lack of good plotting frameworks on the iPhone. Core Plot also encompases many other use cases including desktop systems, but its design has included iPhone support from the beginning. It's getting pretty close to useable and is currently in use in several shipping iPhone and OS X applications.

Edit 2/10

Core Plot has come a long way since I first posted the summary. The framework now has bar charts (including horizontal bar charts, I believe), axis labels (including aribrarty rotations), and fills and backgrounds for graphs. I'm not sure about stacked bar charts, but it wouldn't be hard to add to the CPBarPlot class that implements bar charts. As for annotations, there is a CPAnotation class which you could subclass to add your annotations, if there isn't the exact functionality you need.

Project on github.

Solution 2

As a commercial alternative to CorePlot, I'd recommend giving ShinobiControls a go, they have some pretty good looking charts. They also have very good performance, rendering charts with 100,000+ points at 60fps and multi-touch support.

As a full disclosure, I work for Scott Logic which is the parent company for ShinobiControls.

Solution 3

I have my own library called PowerPlot which is available under a dual-license model.

You can just follow the above link to install the demo app which shows off several sample charts. You can also download the GPL-version of the library and check out if it fits your needs. With the exception of horizontal bar charts it has the features requested - specifically, bar charts, stacked bar charts, various axis label positions and orientations.

Solution 4

I needed a Radar Chart (or Spider web chart) and I couldn't find any, so I made my own implementation:

RPRadarChart

You are free to use it in whatever you want, if you do, let me know! I'll be slowly adding more features to it, if you want something specific ask me through github.

Solution 5

I went through my own search a year or two ago, and ended up making my own line graphing classes because I couldn't find anything that worked exactly the way I needed it to. The two big ones to look at though, are SM2DGraphView and GraphX. I haven't tried either in an iPhone project, but I know SM2DGraphView is open source so you could modify it if needed.

I've also considered using a WebView to use a JavaScript graphing library, but that's just a thought.

Share:
64,209
Mike Akers
Author by

Mike Akers

iPhone,iPad & Android app designer/programmer, Private Pilot (ASEL), amateur VR developer, slightly dangerous electronics tinkerer, wannabe polymath, humanist.

Updated on July 10, 2020

Comments

  • Mike Akers
    Mike Akers almost 4 years

    I have a need to render and display charts (bar charts for now, but more types may be needed later) in an iPhone app I'm working on. I've done some looking around and it doesn't look like there are any really good, mature charting libraries for iPhone yet. I've also looked for something written for Cocoa on the Mac that can be adapted, but haven't found anything great yet.

    Anybody dealt with this before? Any recommendations?

    I did find Core Plot, but it seems to be in the early stages of development.

    Edit to add some details of requirements (as they currently stand ;) )

    • Bar Charts
    • Horizontal bar charts
    • Double stacked bar charts
    • Axis labels (including rotated 90 degrees on the y axis)
    • Labels above each bar on the chart
    • Shaded or custom backgrounds
  • Brad Larson
    Brad Larson about 15 years
    Agreed. There are some very good scientifically-minded Cocoa programmers working on this, so I'd expect it to advance rapidly. Also, the Google Group for this is at groups.google.com/group/coreplot-discuss?hl=en . The archives are worth reading through, to see where people are going with this.
  • Mike Akers
    Mike Akers about 15 years
    I did consider this, but Google Charts won't work without an internet connection.
  • Mike Akers
    Mike Akers about 15 years
    I've looked into Core Plot and it looks like bar charts are completely unimplemented. Still I'll keep an eye on this project.
  • Brad Larson
    Brad Larson over 14 years
    In the interim, many features have been added to Core Plot, including bar charts, horizontal bar charts, custom plot labels, angled labels, and themes (including custom backgrounds).
  • Josh Buhler
    Josh Buhler over 14 years
    I've used this one, and it'll work, but for very basic data sets. Some of the issues I ran into though was it's inability to plot values below zero, and it had a tendency to round any non-integer values.
  • ColinE
    ColinE about 12 years
    CorePlot is ok feature-wise, but it is painfully slow. Mutli touch interactions are very sluggish. Totally spoils the experience in an otherwise slick iPhone or iPad app.
  • strange
    strange almost 11 years
    Looks nice, however do you guys have any plans of developing a library for OS X?
  • adamkonrad
    adamkonrad over 10 years
    Thanks for this one, looks really great!
  • Pier-Luc Gendreau
    Pier-Luc Gendreau over 10 years
    Has anyone used CorePlot recently? What or how much has it improved since then?
  • brainray
    brainray over 9 years
    Link to the Cocoa wrapper is dead
  • Basil Bourque
    Basil Bourque almost 9 years
    HighCharts is one excellent such JavaScript graphing library, fyi.