我有一个基准得分列表和一两个选定的智能手机,所以我需要突出显示这些智能手机。我已经用不同的颜色栏做了这一点,但我还想改变智能手机名称的字体-至少要加粗,但仅限于选定的智能手机,而不是整个类别标签。
我使用下面的代码来绘制条形图,但我不知道如何自定义类别标签的字体:
public class MyBarRenderer extends StackedBarRenderer {
//BarRenderer renderer = (BarRenderer) plot.getRenderer();
private ArrayList<Integer> selectedSmartphones;
public MyBarRenderer (ArrayList<Integer> s) {
selectedSmartphones = s;
this.setSeriesPaint(0, new Color(255,133,0));
this.setSeriesPaint(1, new Color(255,172,83));
this.setSeriesPaint(2, new Color(211,110,0));
}
//renderer.setSeriesPaint(0, Color.getColor("FFAC53"));
@Override
public Paint getItemPaint(int series, int category) {
if (selectedSmartphones.contains(category)) {
switch (series) {
case 0:
return new Color(81, 189, 230);
case 1:
return new Color(7, 167, 229);
case 2:
return new Color(2, 97, 133);
default:
return Color.blue;
}
} else {
switch (series) {
case 0:
return new Color(255, 133, 0);
case 1:
return new Color(255, 172, 83);
case 2:
return new Color(211, 110, 0);
default:
return Color.orange;
}
}
}
}
1条答案
按热度按时间xcitsw881#
我找到了我整个星期都在寻找的答案。
其中
strMyCategory
(Comparable
类型String
)是需要加粗或使用其他字体的确切类别标签。