以下是一个简单的示例,演示如何在Qt应用程序中使用QChartView类显示一个柱状图:
#include <QtWidgets/QApplication>
#include <QtCharts/QChartView>
#include <QtCharts/QBarSeries>
#include <QtCharts/QBarSet>
#include <QtCharts/QLegend>
#include <QtCharts/QBarCategoryAxis>
QT_CHARTS_USE_NAMESPACE
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
// 创建数据集
QBarSet *set0 = new QBarSet("Jane");
QBarSet *set1 = new QBarSet("John");
QBarSet *set2 = new QBarSet("Andy");
*set0 << 10 << 20 << 30 << 40 << 50;
*set1 << 30 << 40 << 10 << 50 << 20;
*set2 << 5 << 30 << 25 << 15 << 35;
// 创建数据系列,并添加数据集
QBarSeries *series = new QBarSeries();
series->append(set0);
series->append(set1);
series->append(set2);
// 创建图表,并设置标题
QChart *chart = new QChart();
chart->addSeries(series);
chart->setTitle("Example Chart");
// 创建X轴标签
QStringList categories;
categories << "Jan" << "Feb" <<"Mar" <<"Apr" <<"May";
QBarCategoryAxis *axisX = new QBarCategoryAxis();
axisX->append(categories);
// 将X轴添加到图表中
chart->addAxis(axisX, Qt::AlignBottom);
series->attachAxis(axisX);
// 创建Y轴,设置范围
QValueAxis *axisY = new QValueAxis();
axisY->setRange(0, 60);
// 将Y轴添加到图表中
chart->addAxis(axisY, Qt::AlignLeft);
series->attachAxis(axisY);
// 创建图表视图并设置图表
QChartView *chartView = new QChartView(chart);
chartView->setRenderHint(QPainter::Antialiasing);
// 显示图表视图
chartView->show();
return a.exec();
}
此示例创建了一个包含三个数据系列的柱状图,并显示在QChartView窗口中。每个数据系列都有五个数据点,分别用不同的颜色表示。
内容由零声教学AI助手提供,问题来源于学员提问