[英]How to limit zoom in QtCharts?
我已經實現了來自http://doc.qt.io/qt-5/qtcharts-zoomlinechart-example.html的縮放示例
現在我需要限制縮放。 我有兩個 Y 軸的值 -100 到 +100(甚至更大),另一個 y2 軸固定在 -pi..pi(沒有超出該范圍的值)
縮放比例不應大於數據范圍的邊界,或者至少可以設置限制。
那么我該如何實現呢? 到目前為止,我沒有找到更多關於 QtCharts 的例子。
此外,我想將縮放重置為原始縮放,比如 Backspace。 我將如何重置縮放?
遲到的答案,但因為沒有其他人..
在MyChartView : public QtCharts::QChartView
類中,我用這個方法覆蓋了mouseReleaseEvent
。 當右鍵單擊軸將立即“縮小”為默認值時(這是我想要的)。
如果應逐步支持縮小,我想連接到 QValueAxis::maxChanged/QValueAxis::minChanged 並檢查可以完成的范圍。
void MyChartView::mouseReleaseEvent(QMouseEvent *event) {
if (event->button() == Qt::MouseButton::LeftButton) {
// continue with zoom in
QtCharts::QChartView::mouseReleaseEvent(event);
}
else if (event->button() == Qt::MouseButton::RightButton) {
// reset axis to default
axisY_->setMin(0);
axisY_->setMax(10);
axisX_->setMin(0);
axisX_->setMax(10);
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.