I actually love Graphite's API. I've yet to find another solution that is as easy to use and has as many available functions (http://graphite.readthedocs.org/en/latest/functions.html).
For that reason we still use graphite's API, but not the UI or datastore. Whisper nor whatever the newer one is would survive the load we put on it.
Our setup looks like:
grafana -> graphite-api -> graphite-influxdb -> InfluxDB <- statsite (C impl of statsd) <- metrics