org.jfree.chart.plot

Class PieLabelDistributor

Implemented Interfaces:
Serializable

public class PieLabelDistributor
extends AbstractPieLabelDistributor

This class distributes the section labels for one side of a pie chart so that they do not overlap.

Field Summary

Fields inherited from class org.jfree.chart.plot.AbstractPieLabelDistributor

labels

Constructor Summary

PieLabelDistributor(int labelCount)
Creates a new distributor.

Method Summary

protected void
adjustDownwards(double minY, double height)
Any labels that are overlapping are moved down in an attempt to eliminate the overlaps.
protected void
adjustInwards()
Adjusts the y-coordinate for the labels in towards the center in an attempt to fix overlapping.
protected void
adjustUpwards(double minY, double height)
Any labels that are overlapping are moved up in an attempt to eliminate the overlaps.
void
distributeLabels(double minY, double height)
Distributes the labels.
void
sort()
Sorts the label records into ascending order by y-value.
protected void
spreadEvenly(double minY, double height)
Labels are spaced evenly in the available space in an attempt to eliminate the overlaps.
String
toString()
Returns a string containing a description of the object for debugging purposes.

Methods inherited from class org.jfree.chart.plot.AbstractPieLabelDistributor

addPieLabelRecord, clear, distributeLabels, getItemCount, getPieLabelRecord

Constructor Details

PieLabelDistributor

public PieLabelDistributor(int labelCount)
Creates a new distributor.
Parameters:
labelCount - the number of labels (ignored).

Method Details

adjustDownwards

protected void adjustDownwards(double minY,
                               double height)
Any labels that are overlapping are moved down in an attempt to eliminate the overlaps.
Parameters:
minY - the minimum y value (in Java2D coordinate space).
height - the height available for all labels.

adjustInwards

protected void adjustInwards()
Adjusts the y-coordinate for the labels in towards the center in an attempt to fix overlapping.

adjustUpwards

protected void adjustUpwards(double minY,
                             double height)
Any labels that are overlapping are moved up in an attempt to eliminate the overlaps.
Parameters:
minY - the minimum y value (in Java2D coordinate space).
height - the height available for all labels.

distributeLabels

public void distributeLabels(double minY,
                             double height)
Distributes the labels.
Overrides:
distributeLabels in interface AbstractPieLabelDistributor
Parameters:
minY - the minimum y-coordinate in Java2D-space.
height - the available height (in Java2D units).

sort

public void sort()
Sorts the label records into ascending order by y-value.

spreadEvenly

protected void spreadEvenly(double minY,
                            double height)
Labels are spaced evenly in the available space in an attempt to eliminate the overlaps.
Parameters:
minY - the minimum y value (in Java2D coordinate space).
height - the height available for all labels.

toString

public String toString()
Returns a string containing a description of the object for debugging purposes.
Returns:
A string.