c# mschart 饼图如何能添加鼠标事件,我移动到某个区域然后显示一些文字??

c# mschart 饼图如何能添加鼠标事件,我移动到某个区域然后显示一些文字??,第1张

////鼠标放上去显示本项目数量占比重值

chart1.Series["Series1"].ToolTip = "[#AXISLABEL]占比:#PERCENT{P2}"

#AXISLABEL 指的是这部分你传进来的X值

#PERCENT 自动对Y值计算百分比

其他的文字你想添加什么都可以了

Qt Charts用来创建各种数据图表/曲线,如下图所示。

Qt Charts的核心是 QChartView(显示图表)和QChart(管理数据)。

QChart类用于管理各种数据序列(series),以及图表相关的对象,如图例(legend)和坐标轴(axis)

QChart类用来 管理 图表的数据序列(series)、图例(legends)和坐标轴(axes)。

QChart继承自QGraphicsWidget类,可以在QGraphicsScene中显示。QChart管理图表的不同类型的图形表示,包括序列,标题和坐标轴。显示QChat最简单的方式是使用QChatView。

此外,还可以用QPolarChart(它继承自QChart)来表示折线图(line),曲线图(spline),饼状图(area)和散点图(Scatter)。

QChartView是一个能够显示图表的widget。

其中最重要的一个函数是:

void QChartView::setChart( QChart *chart)

该函数把QChartView的当前图表设为chart,新chart的所有权归QChartView所有。前一个chart(如果有)和QChartView的关系解除,必须delete前一个chart以防止内存泄露。

void QXYSeries::replace( QList <QPointF >points)

void QXYSeries::replace( QVector <QPointF >points)

以上两个函数的速度最快,要比逐点 replace 或 clear + append 新数据要快得多。replace或append是实现动态绘图的基础。

而 QVecto r的速度通常比 QList 更快,前者是内存连续的。

void setName(const QString &name):设置序列的名字,该名字显示在序列的 legend 上,支持HTML格式。

坐标轴的基类是QAbstractAxis,轴上的数据时real/double型的。

Legend用来给图标添加图例。Legend不能被创建或删除,但可以隐藏。它可以放在图标的上、下、左、右,默认在上面。

Legend上显示的名字是对应Series的名字,用 QAbstractSeries::setName(QString&name)设置。

Qt官方文档:QChart类;

Qt官方文档:Qt Charts Overview

QTCharts入门 使用QChartView做折线图

早上7点到晚上11点。qtchart时间轴更新刻度范围是早上7点到晚上11点,QtCharts的坐标轴主要有两种,一种是QValueAxis,另外一种就是需要的QDateTimeAxis 有时候需要绘制与时间相关的数据。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/7987667.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-12
下一篇 2023-04-12

发表评论

登录后才能评论

评论列表(0条)

保存