如何在QwtPlot上的轴标签周围添加额外空间?

时间:2014-10-06 21:52:21

标签: qt qwt

我有一个QwtPlot子类,用于绘制左轴和下轴的标签,我想为这些标签添加一些额外的边距 - 特别是在这些标签和刻度线的数字标签之间。有没有内置的方法来添加这样的填充? (我现在正在使用QwtPlainTextEngine来渲染标签,所以我想我可以创建自己的子类来增加额外的空间,但这比我想要的要低得多。)

2 个答案:

答案 0 :(得分:1)

参见QwtAbstractScaleDraw :: setSpacing()

答案 1 :(得分:0)

我有同样的问题并且像这些方法一样解决了。

方法1:

我们可以像这样使用画布给出边距

double margin = 30;
plot->plotLayout()->setCanvasMargin(margin, QwtPlot::yLeft);
plot->plotLayout()->setCanvasMargin(margin, QwtPlot::yRight);

别忘了#include <qwt_plot_layout.h>

方法2:

使用轴距离边距。这是一个例子:

double margin = 30;
plot->axisWidget(QwtPlot::xBottom)->setMinBorderDist(margin, margin);

别忘了#include <qwt_scale_widget.h>

我希望这会有用。