2014-10-02 71 views
2

在Qwt中,是否可以將兩個軸的位置從左下角(默認位置)更改爲QwtPlot的中間位置? (兩個軸的交點應位於圖的中心)。我還沒有找到一段代碼。是否可以在qwt中更改軸的位置?

myPlot = new QwtPlot(this->ui.graphicsView_outter); 
QSize plotSize = ui.graphicsView_outter->size(); 
myPlot->resize(plotSize); 
myPlot->setTitle("Calibration"); 
myPlot->setAxisTitle(QwtPlot::xBottom, "X"); 
myPlot->setAxisTitle(QwtPlot::yLeft, "Y"); 
myPlot->enableAxis(QwtPlot::yLeft,false); 
myPlot->enableAxis(QwtPlot::xBottom,false); 
QwtPlotScaleItem *it = new QwtPlotScaleItem(QwtScaleDraw::RightScale ,0.0); 
it->attach(myPlot); 
QwtPlotScaleItem *it1 = new QwtPlotScaleItem(QwtScaleDraw::BottomScale ,0.0); 
it1->attach(myPlot); 
myPlot->replot(); 

回答

2

試試這個:

QwtPlotScaleItem *it = new QwtPlotScaleItem(QwtScaleDraw::RightScale ,0.0); 
    it->attach(ui->qwtPlot); 

    QwtPlotScaleItem *it1 = new QwtPlotScaleItem(QwtScaleDraw::BottomScale ,0.0); 
    it1->attach(ui->qwtPlot); 

如果你想隱藏自己的長軸,使用此:

ui->qwtPlot->enableAxis(QwtPlot::yLeft,false); 

結果:

enter image description here

+0

謝謝您的回答,請參閱我上面的代碼...我仍然是我只能看到底部和左側的兩個軸! – Samer 2014-10-02 18:11:43

+0

@Samer我不知道你的代碼有什麼問題,文檔說,使用enableAxis,你可以禁用這個軸,在我的電腦上(在graphicsView中),thre是沒有任何軸和QwtPlotScaleItem正常工作。抱歉。 – Chernobyl 2014-10-02 18:29:51

+1

最後,我開始工作,事實證明,我的中心位置是(500,500)而不是(0,0)。謝謝各位 – Samer 2014-10-02 19:02:07

相關問題