5.6 片区和图例标签
片区标签使用的文本,即可以在图表上显示,也可以在图表的图例上显示,并且完全可以定制。标签是自动默认产生的,但我们可以使用下面方法来改变:
public void setLabelGenerator(PieSectionLabelGenerator generator);
public void setLegendLabelGenerator(PieSectionLabelGenerator generator);
StandPieSectionLabelGenerator类专门用来生成图例的一个实现类,提供灵活处理定制标签的功能(如果你不喜欢用这个类,可以定义自己的类,只要实现接口PieSectionLabelGenerator即可)。Dataset显示出的标签值由Javade信息格式类来进行格式化——表5.1所示格式化的变量值。
名称 | 描述 |
---|---|
{0} | 片区关键值(字符串) |
{1} | 片区值 |
{2} | 百分比的片区值 |
表5.1 StandardPieSectionLabelGenerator substitutions
下面举例说,假如我们有一个PieData包含下面的值
片区标识 | 片区值 |
---|---|
S1 | 3.0 |
S2 | 5.0 |
S3 | Null |
S4 | 2.0 |
表 5.2 一个dataset实例
下面是格式化字符串产生的标签值内容:
格式化字符串 | 片区 | 产生的标签值 |
---|---|---|
{0} | 0 | S1 |
{0} has value {1} | 1 | S2 has value 5.0 |
{0}({2} percent) | 0 | S1(30 percent) |
{0} = {1} | 2 | S3 = null |
类PieChartDemo2.java使用了定制标签的方法。