We have addressed the problem of varying peek height when zooming out on with a recent feature called "Percentile Aggregation".
It is an overlay you can add to any graph using:
[+] > SLA Monitoring > Percentile Aggregation (min and max)
It will add graphs for the the minimum and the maximum value in each aggregation interval:

When zooming in to ~1h, the additional graphs will be identical to the original graph.

When zooming out, the peek value will be displayed by the upper graph.
Here is how it looks:
First I'll start with the spikes in the graph. We have multiple rollups that average out the data over larger intervals, so spikes will change their magnitude if you zoom out further. As for the resolution, we try to balance rendering time with the fact that we might not even have enough pixels to show the smaller intervals. Even if you would zoom in to get the 1m or 5m window, that is still (potentially) an aggregate of numbers if you are collecting the data more than once in the interval, so you want to really look at the trend and not the absolute values there.
Note that the smallest interval in Circonus is 1 minute, so if you zoom in close enough ,that is what you will be presented with.
Counter, derive, gauge, and other terms we use are for our system, don't relate to statsd at all, because we need to be agnostic regarding the incoming data. If you are sending a gauge with statsd that is an ever growing number (network inoctets, cpu ticks, etc.), that should be graphed as a counter (positive rate of change) in Circonus. It's probably best to think about what the "raw" data you are feeding us is and use our notions to graph and alert.
The gauge is indeed still averaged out over intervals as well. When we make a 5m rollup, we need to shove five 1m datapoints into that, so we have to record the average and how many values made up that average. The same is the true for any of the larger intervals we need to use.