Hacker News new | comments | show | ask | jobs | submit login

If you hand it a single column of data, gnuplot just uses the order for the x axis. The x label in the first plot should be 'Row number' or something like that.

Since each row is a single request, and ab writes the file sorted by response time, the first plot is effectively a sideways cumulative histogram. In other words, you can see that 4000 out of 5000 requests were served in under 150ms, etc. Arguably this is more informative than the scatterplot, although I suspect the OP is right about how commonly the graph is misunderstood.

Coincidentally, I'm in a Skype chat trying to explain this same thing. Now that I understand it, I'm growing to like the sideways cumulative histogram because it gives a good representation of the time factor. If we were to flip the axis with response time on the x axis using something like 5 ms binning, and the y axis representing a count of the requests for each bin, we'd lose the significance of a request that takes 500ms. On our "proper" histogram, it would be represented by a tiny bar to the right of the histogram. I'm not sure that's preferable.

The choice of cumulative distribution vs. time-dependent response times depends a lot on what you're trying to measure. The cumulative distribution is useful for showing the likely response time and its variation, but assumes a constant state. Your new plot style is useful for seeing how changes in loads affect the response time distribution (if you see double the hits, do you get longer response times and/or more variation in times?).

That's a really good point. In fact what you're describing is what the OP says people expect the first plot to show. Just because we (I?) can't perceive trends in the OP's second plot doesn't mean we couldn't if he increased the ab parameters.

That makes sense.

I guess there should be a better label for the y axis though.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact