在 Android TeeChart 中更改 Axis Title 和 Axis 之间的距离

Change distance between Axis Title and Axis in Android TeeChart

我试图更改 Android TeeChart 中轴标题和轴之间的距离。我玩了一点

tChart.getAxes().getLeft().getTitle().setCustomSize();
tChart.getAxes().getBottom().getTitle().setCustomSize();
tChart.getAxes().getLeft().getLabels().setCustomSize();
tChart.getAxes().getBottom().getLabels().setCustomSize();

在左边的轴上效果很好,但按钮轴标题保持在相同的位置。有人知道解决方案吗?

谢谢。

恐怕没有一个属性可以设置在轴标题和轴之间添加额外的space。
我认为实现它的更简单方法是在图表中添加一些边距并在 canvas 上手动绘制轴标题。即:

    Bar bar1 = new Bar(tChart1.getChart());
    bar1.fillSampleValues();

    tChart1.addChartPaintListener(new ChartPaintAdapter() {

        @Override
        public void chartPainted(ChartDrawEvent e) {

            String leftText = "Left Axis Title";
            String bottomText = "Bottom Axis Title";

            int YMid = tChart1.getChart().getChartRect().y + (tChart1.getChart().getChartRect().height / 2);
            int XMid = tChart1.getChart().getChartRect().x + (tChart1.getChart().getChartRect().width / 2);

            tChart1.getGraphics3D().setFont(tChart1.getAxes().getLeft().getTitle().getFont());
            int leftHeight = tChart1.getGraphics3D().textWidth(leftText);
            tChart1.getGraphics3D().rotateLabel(10, YMid + (leftHeight / 2), leftText, 90);

            tChart1.getGraphics3D().setFont(tChart1.getAxes().getBottom().getTitle().getFont());
            int bottomWidth = tChart1.getGraphics3D().textWidth(bottomText);
            tChart1.getGraphics3D().textOut(XMid - (bottomWidth / 2), tChart1.getHeight() - 20, bottomText);
        }
    });

    tChart1.getPanel().setMarginLeft(10);
    tChart1.getPanel().setMarginBottom(10);

然后,您可以轻松地增加边距或移动标题。