一、改變范圍
QCustomPlot *customplot; customplot->setInteraction(QCP::iRangeDrag,true);
使控件能夠拖拉。
customplot->axisRect()->setRangeDrag(Qt::Vertical);// Qt::Horizontal
使控件只能在某一方向上拖拉,默認是水平和垂直都支持。
customplot->setInteraction(QCP::iRangeZoom,true);
使控件能夠伸縮。
customplot->axisRect()->setRangeZoomAxes(QCPAxis * horizontal, QCPAxis * vertical);
設置伸縮的坐標軸。
customplot->axisRect()->setRangeZoom();
設置伸縮的方向。默認水平和垂直都可以。
customplot->axisRect()->setRangeZoomFactor();
設置伸縮比例,可設置成一樣的,也可分別對水平和垂直進行設置。
二、選擇圖元
customplot->setInteraction(QCP::iSelectPlottables,true);
將圖元設置成可選擇的。
在setInteraction函數中可開啟的有上圖這些。
customplot->graph()->setSelected(bool);
可通過setSelected設置圖元能否被選中。
customplot->deselectAll();
取消所有選中。
被選中的圖元的屬性可通過以下設置:
QCPGraph::setSelectedPen, QCPGraph::setSelectedBrush, QCPAxis::setSelectedLabelFont, QCPAxis::setSelectedBasePen, QCPItemText::setSelectedColor
QCPAxis 由刻度、數值、標簽組成,每部分都可以單獨選中,因此通過:
customplot->xAxis->setSelectableParts();
參數可以是
QCPAxis::spNone, QCPAxis::spAxis, QCPAxis::spTickLabels, and QCPAxis::spAxisLabel
的並集。
QCustomPlot 支持低級的響應信號,如:
QCustomPlot::mouseDoubleClick, mousePress, mouseMove, mouseRelease, and mouseWheel
以及高級的,如:
QCustomPlot::plottableClick, plottableDoubleClick, itemClick, itemDoubleClick, axisClick, axisDoubleClick, legendClick, legendDoubleClick, titleClick, and titleDoubleClick