jFreeChart setLabelFont大小在GroupedStackedBarRenderer中不起作用

时间:2016-04-21 22:59:16

标签: jfreechart

我使用GroupedStackedBarRenderer来允许我的图表中的子类别。我添加子类别并使用以下命令控制子类别的字体大小:

    SubCategoryAxis domainAxis = new SubCategoryAxis("");
    domainAxis.addSubCategory("Skill 1");
    domainAxis.addSubCategory(...)
    domainAxis.setSubLabelFont(new Font("Tahoma", Font.PLAIN, 12));

但是以下行对主要类别本身没有影响,日期标签:

    plot.setDomainAxis(domainAxis);
    Font font3 = new Font("Dialog", Font.PLAIN, 16); 
    domainAxis.setLabelFont(font3);

在反射中,我意识到我需要获得类别域轴而不是子类别的引用。所以我尝试了以下内容:

   CategoryPlot catPlot = (CategoryPlot) chart.getPlot();
   catPlot.getDomainAxis().setLabelFont(new Font("Tahoma", Font.PLAIN, 20));

但它仍然无效。

这是我的图表:
enter image description here

1 个答案:

答案 0 :(得分:1)

使用setTickLabelFont()更改刻度标签的字体。使用deriveFont()保留现有字体属性。

domainAxis.setTickLabelFont(domainAxis.getTickLabelFont().deriveFont(16f));

image