序:
1 开发包demo有一个不同的demo
效果1
第一步:创建一个QBarSet对象;QBarSet类代表条形图中的一组条形。
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 << 13 << 6;
*set1 << 5 << 0 << 0 << 4 << 15 << 7;
*set2 << 3 << 5 << 8 << 13 << 8 << 5;
*set3 << 5 << 6 << 7 << 3 << 4 << 5;
*set4 << 9 << 7 << 5 << 3 << 1 << 2;
第三步:创建一个QBarSeries对象,QBarSeries类将一系列数据显示为按类别分组的竖线。
QBarSeries *series = new QBarSeries();
series->append(set0);
series->append(set1);
series->append(set2);
series->append(set3);
series->append(set4);
第四步:创建一个QChart用来装QBarSeries对象;QChart是一个QGraphicsWidget,可以在QGraphicsScene中显示。
QChart *chart = new QChart();
chart->addSeries(series);
chart->setTitle("Simple barchart example");
chart->setAnimationOptions(QChart::SeriesAnimations);
// series->setLabelsPosition(QAbstractBarSeries::LabelsInsideEnd); //设置标签显示的位置
// series->setLabelsVisible(true); //设置数据标签可见
第五步:创建一个QChartView来显示表格
QChartView *chartView = new QChartView(chart);
第六步:将QChartView添加到一个主窗口然后显示出来。
QMainWindow window;
window.setCentralWidget(chartView);
window.resize(420, 300);
window.show();
效果2
QStackedBarSeries *series = new QStackedBarSeries();
定制列坐标
QValueAxis *axisY = new QValueAxis();
axisY->setLabelsFont(font);
axisY->setLabelsColor(Qt::white);
axisY->setGridLineColor(QColor("#515157"));
axisY->setLineVisible(false);
axisY->setRange(0, 100);
axisY->setTickCount(6); //y轴点数量
axisY->setLabelFormat("%d%%");
m_pchart->setAxisY(axisY, series);