For our iPhone weight tracking application was opened a defect: “labels overlapped when user zooms graph”.
For displaying graphs in iPhone application we use Core-Plot plotting framework, which is a great for displaying charts, graphs… in iPhone applications.
By default when user opens a graph it displays around 10 past records, but when user start zooming out the graph, more and more records need to be displayed. And at the end the graph looks like below. The x axis contains too many labels and they are overlapped.

After some digging around, the solution was found.
Both X and Y axis have properties labelingPolicy which can have one of the following values
CPAxisLabelingPolicyNone, ///< No labels provided; user sets labels and locations.
CPAxisLabelingPolicyLocationsProvided, ///< User sets locations; class makes labels.
CPAxisLabelingPolicyFixedInterval, ///< Fixed interval labeling policy.
CPAxisLabelingPolicyAutomatic ///< Automatic labeling policy.
To make labels displays automatic, depending on scale, the labelingPolicy property has to be set to CPAxisLabelingPolicyAutomatic value
Also developer has to setup property preferredNumberOfMajorTicks which defines how many labels will be displayed for X or Y axis, in our case it’s 10. After the fix was done, graph looks like below

As you can see labels are not overlapped now and if user zoom in or out the graph, the labels will be automatically adjusted, so only ten labels will be displayed.