翻譯|使用教程|編輯:鮑佳佳|2021-04-14 10:03:12.247|閱讀 261 次
概述:該示例顯示了如何創建條形圖。條形圖將數據集中顯示為單獨的條形。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
Qt是一個跨平臺框架,通常用作圖形工具包,它不僅創建CLI應用程序中非常有用。而且它也可以在三種主要的臺式機操作系統以及移動操作系統(如Symbian,Nokia Belle,Meego Harmattan,MeeGo或BB10)以及嵌入式設備,Android(Necessitas)和iOS的端口上運行。現在我們為你提供了免費的試用版。
Qt組件推薦:
該示例顯示了如何創建條形圖。
條形圖將數據集中顯示為單獨的條形,屬于類別。
要從Qt Creator中運行該示例,請打開歡迎模式并從示例中選擇該示例。有關更多信息,請訪問
在所有的柱狀圖中,柱狀圖的使用方式都是一樣的。為了說明各種柱狀圖之間的區別,我們在示例中使用相同的數據。條形圖可視化的數據,是由QBarSet實例定義的。在這里,我們創建集并將數據追加到它們上面。數據在這里用<<操作符進行追加。另外,也可以使用append方法。
QBarSet *set0 = new QBarSet("Jane"); QBarSet *set1 = new QBarSet("John"); QBarSet *set2 = new QBarSet("Axel"); QBarSet *set3 = new QBarSet("Mary"); QBarSet *set4 = new QBarSet("Samantha"); *set0 << 1 << 2 << 3 << 4 << 5 << 6; *set1 << 5 << 0 << 0 << 4 << 0 << 7; *set2 << 3 << 5 << 8 << 13 << 8 << 5; *set3 << 5 << 6 << 7 << 3 << 4 << 5; *set4 << 9 << 7 << 5 << 3 << 1 << 2;
我們創建系列,并將條形圖附加到它上面。該系列擁有小節的所有權。該系列將數據從組到類別進行分組。每個集合的第一個值被歸入第一類,第二個值歸入第二類,以此類推。
QBarSeries *series = new QBarSeries(); series->append(set0);(set0); series->append(set1);(set1); series->append(set2);(set2); series->append(set3);(set3); series->append(set4);(set4);
在這里,我們創建圖表對象并將系列添加到其中。我們用setTitle設置圖表的標題,然后通過調用setAnimationOptions(QChart::SeriesAnimations)開啟系列的動畫。
QChart *chart = new QChart(); chart->addSeries(series);(series); chart->setTitle(("Simple barchart example"); chart->setAnimationOptions((QChart::SeriesAnimations););
要在軸上顯示類別,我們需要為此創建一個QBarCategoryAxis。在這里,我們創建帶有類別列表的類別軸,并將其設置為與x軸底部對齊,然后將其附加到序列中。該圖表獲取軸的所有權。對于y軸,我們使用與左側對齊的值軸。
QStringList categories;; categories << "Jan" << "Feb" << "Mar" << "Apr" << "May" << "Jun"; QBarCategoryAxis *axisX = new QBarCategoryAxis(); axisX->append(categories);(categories); chart->addAxis(axisX(axisX, Qt::AlignBottom);); series->attachAxis(axisX);(axisX); QValueAxis *axisY = new QValueAxis(); axisY->setRange((0,15); chart->addAxis(axisY(axisY, Qt::AlignLeft);); series->attachAxis(axisY);(axisY);
我們還想顯示圖例。要做到這一點,我們從圖表中獲取圖例指針并將其設置為可見。我們還通過將圖例的對齊方式設置為 Qt::AlignBottom 來將其放置到圖表的底部。
chart->legend()()->setVisible((true); chart->legend()()->setAlignment((Qt::AlignBottom););
最后我們將圖表添加到一個視圖中。我們還為chartView打開抗鋸齒功能。
QChartView *chartView = new QChartView(chart);chart); chartView->setRenderHint((QPainter::Antialiasing););
該圖表已準備好顯示。我們將圖表設置為窗口的中央小部件。我們還設置圖表窗口的大小并顯示它。
QMainWindow window;; window.setCentralWidget(chartView);(chartView); window.resize((420, 300); window.show();();
====================================================
想要了解或購買Qt正版授權的朋友,歡迎
Qt技術交流群現已開通,QQ搜索群號“765444821”或者掃描下方二維碼即可加入
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自: