qwt:如何在图例中添加额外的文本

Posted

技术标签:

【中文标题】qwt:如何在图例中添加额外的文本【英文标题】:qwt: how to add extra text in legend 【发布时间】:2019-01-04 08:26:47 【问题描述】:

我有一个 QwtPlot,里面有几行。它也有一个传说。

现在除了线本身的描述之外,我想添加额外的文本来描述图表。

例如“a 行:青蛙的长度,b 行:青蛙的重量”,然后作为额外的“外部温度为 12C”(然后不绘制温度)。

【问题讨论】:

那么您目前有任何“手动”图例设置代码,还是留给自动? 目前是全自动的。 【参考方案1】:

图例中QwtPlot的描述是QwtLegendData。在QwtPlotItem doc(它是所有 QwtPlots 的超类)中进一步:

QwtLegendData 基本上是一个 QVariants 列表,可以重载和重新实现 legendData() 以返回几乎任何类型的信息,充当图例的接收器可以理解这些信息。

因此,您需要做的就是从图中提取现有的“自动”图例,然后再添加一个 QwtLegendData。它还需要一个 QVariant 作为“键”来区分每个图的数据,但它实际上可以是任何与真实图的键不同的东西。如果您不打算添加更多此类额外文本,即使默认(空)QVariant() 也可以。

QwtLegendData data;
data.setValue(QwtLegendData::Role::TitleRole, QVariant("Outside temperature is 12C"));
QList<QwtLegendData> list;
list << data;
QwtAbstractLegend* existingLegend = frogPlot.legend();
// "update" with a new key really means "insert"
existingLegend->updateLegend(QVariant("Temperature comment extra text"), list);

【讨论】:

以上是关于qwt:如何在图例中添加额外的文本的主要内容,如果未能解决你的问题,请参考以下文章

如何在 swift 中使用文本字段文本“金额”向 tableview 添加额外的行

在ggplot2图例中添加一个带有标签的额外形状。

以最简单的方式在 Matplotlib 中的 PyPlot 中添加图例

如何在 Qt 4.7 中使用 Qwt

如何链接到 Ubuntu 上的 Qwt 库?

如何将 Qwt 图添加到框架