QChart笔记6:显示点的值、显示点坐标值

QChart笔记2: 添加鼠标悬停显示和格式处理_qchart 折线图 响应鼠标显示数据-CSDN博客上修改而来。

在笔记2中,通过鼠标悬停的方式显示了坐标轴Y的值,如果要一直显示应该怎么写呢?比如要达到下面的效果。

核心是这句:

series1->setPointLabelsFormat("@yPoint");

pointLabelsFormat :                   

用于显示带有数据点的标签的格式。

QXYSeries 支持以下格式标签:

@xPoint:数据点的 x 坐标。
@yPoint:数据点的 y 坐标。
例如,格式标记的以下用法将生成显示数据点的标签,这些数据点显示在用逗号 (x, y) 分隔的括号内:

series->setPointLabelsFormat("(@xPoint, @yPoint)");
默认情况下,标签的格式设置为@xPoint、@yPoint。标签显示在绘图区域上,绘图区域边缘的标签被剪切。如果这些点彼此靠近,则标签可能会重叠。

相关的函数:

QString

pointLabelsFormat() const

void

setPointLabelsFormat(const QString &format)

通知信号:

void

pointLabelsFormatChanged(const QString &format)

源码:

main.cpp

#include "mainwindow.h"
#include <QApplication>
#include <QMainWindow>
#include <QChartView>
#include <QPieSeries>
#include <QPieSlice>
#include <QPointF>
#include <QDateTime>
#include <QDate>
#include <QDateTimeAxis>
#include <QDebug>
#include <QSplineSeries>
#include <QToolTip>
#include <QtCharts>

#include "chartview.h"

QChart *chart;
QSplineSeries *series1;
ChartView *chartView;
QScatterSeries *scatterSeries;
void initChart()
{
    //初始化QChart的实例
    chart = new QChart();

    //初始化QSplineSeries的实例
    series1 = new QSplineSeries();
    //设置两条折线的名称
    series1->setName("第一组");

    //把曲线添加到QChart的实例chart中
    chart->addSeries(series1);

    chart->legend()->hide();
    //声明并初始化X轴、两个Y轴
    QDateTimeAxis *axisX = new QDateTimeAxis();
    QValueAxis *axisY_1 = new QValueAxis();
    //设置坐标轴显示的范围
    axisX->setMin(QDateTime(QDate(2022, 6, 6), QTime()));
    axisX->setMax(QDateTime(QDate(2022, 6, 12), QTime()));
    axisX->setTickCount(7);
    axisX->setFormat(QString("yyyy-MM-dd"));
    axisY_1->setMin(0);
    axisY_1->set
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值