Qt-chart 画折线图(文字x轴)

代码

cpp 复制代码
QLineSeries *seriesReality = new QLineSeries();
	seriesReality->setColor(Qt::green);
	QLineSeries *seriesTar = new QLineSeries();
	seriesTar->setColor(Qt::yellow);
	// 创建并配置X轴(文字标签)
	QStringList categories;
	for (int i = 0; i < 12; i++)
	{
		categories << QString::number(i + 1);
		seriesReality->append(i, i+1);
		seriesTar->append(i, i + 2);
	}

	QPen pen;
	// 设置序列宽度
	pen.setWidth(2);             
	// 折线序列的线条设置
	seriesReality->setPen(pen);       
	seriesTar->setPen(pen);     

	seriesReality->setColor(Qt::green);
	seriesTar->setColor(Qt::yellow);

	seriesReality->setPointLabelsVisible(true);
	seriesTar->setPointLabelsVisible(true);

	QChart *chart = new QChart();
	chart->addSeries(seriesReality);
	chart->addSeries(seriesTar);
	//设置图例的显示位置在底部
	//chart->legend()->setAlignment(Qt::AlignBottom);
	 //去背景
	chart->setBackgroundVisible(false); 
	//隐藏图例
	chart->legend()->hide();

	//创建坐标轴
	 //Y 轴
	QValueAxis* axisY = new QValueAxis;
	axisY->setRange(0, 20);
	axisY->setLabelsColor(QColor(Qt::GlobalColor::black));
	//刻度线颜色
	axisY->setGridLineColor(QColor(Qt::GlobalColor::black));
	chart->addAxis(axisY, Qt::AlignLeft);

	seriesReality->attachAxis(axisY);
	seriesTar->attachAxis(axisY);

	QBarCategoryAxis *axisX = new QBarCategoryAxis();
	axisX->append(categories);
	chart->addAxis(axisX, Qt::AlignBottom);
	seriesReality->attachAxis(axisX);
	seriesTar->attachAxis(axisX);

	seriesReality->setPointLabelsFormat("(@yPoint)");
	seriesTar->setPointLabelsFormat("(@yPoint)");

	seriesReality->setPointLabelsClipping(false);
	seriesTar->setPointLabelsClipping(false);

	// 使用 QChartView 来显示图表
	QChartView* chartView = new QChartView(chart);
	chartView->setRenderHint(QPainter::Antialiasing);
	setCentralWidget(chartView);
相关推荐
斯普信专业组2 分钟前
PostgreSQL高可用集群部署与配置指南
数据库·postgresql
利刃大大8 分钟前
【MyBatis】MyBatis操作动态sql && MyBatisGenerator
数据库·sql·mybatis
qq_124987075326 分钟前
基于微信小程序的电子元器件商城(源码+论文+部署+安装)
java·spring boot·spring·微信小程序·小程序·毕业设计
吃喝不愁霸王餐APP开发者32 分钟前
基于Spring Cloud Gateway实现对外卖API请求的统一鉴权与流量染色
java·开发语言
a努力。35 分钟前
美团Java面试被问:Redis集群模式的工作原理
java·redis·后端·面试
一雨方知深秋44 分钟前
面向对象编程
java·封装·this·构造器·static关键字·成员变量·javabean实体类
资生算法程序员_畅想家_剑魔1 小时前
Java常见技术分享-11-责任链模式
java·spring boot·责任链模式
一瓢西湖水1 小时前
loader命令导出大批量数据维护SQL
数据库·sql
计算机程序设计小李同学1 小时前
动漫之家系统设计与实现
java·spring boot·后端·web安全
颜颜yan_1 小时前
时序数据库选型指南:工业物联网时代如何选择数据底座
数据库·物联网·时序数据库