class QXYSeries#

QXYSeries类是线条、样条和散点系列的基类。更多

Inheritance diagram of PySide6.QtGraphs.QXYSeries

继承自: QScatterSeriesQLineSeriesQSplineSeries

概述#

属性#

方法#

虚函数#

信号#

注意

本文档可能包含从C++自动翻译成Python的代码片段。我们始终欢迎对片段翻译的贡献。如果您发现翻译问题,也可以通过在https:/bugreports.qt.io/projects/PYSIDE上创建问题报告的方式告诉我们。

详细信息#

QXYSeries 支持在图表上显示最佳拟合线。最佳拟合线是通过图表的点表达点之间关系的线。

枚举值 PointConfiguration#

此枚举值描述了点的特定配置。

常量

描述

QXYSeries.PointConfiguration.Color

此枚举值可用于更改点的颜色。如果与setPointConfiguration 结合使用,则配置的值应该是一个有效的QColor。

QXYSeries.PointConfiguration.Size

此枚举值可用于更改点的大小。如果与setPointConfiguration 结合使用,则配置的值应该是一个数字,例如 qrealint

QXYSeries.PointConfiguration.Visibility

此枚举值可用于隐藏或显示点。如果与setPointConfiguration一起使用,配置的值应该是布尔值。

QXYSeries.PointConfiguration.LabelVisibility

此枚举值可用于隐藏或显示点的标签。如果与setPointConfiguration一起使用,配置的值应该是布尔值。

QXYSeries.PointConfiguration.LabelFormat

此枚举值可用于为每个点设置自定义标签文本。如果与setPointConfiguration一起使用,配置的值应该是字符串。

注意

如果将空字符串设置为LabelFormat,则将被忽略,并使用系列的pointLabelsFormat

注意

当使用from __feature__ import true_property时,可以直接使用属性,否则通过访问器函数。

属性 bestFitLineColorᅟ: QColor#

此属性持有最佳拟合线的颜色。

访问函数
属性 bestFitLineVisibleᅟ: bool#

此属性持有最佳拟合线的可见性。

默认情况下,此属性为false

另请参阅

bestFitLineEquation

访问函数
属性 colorᅟ: QColor#

此属性持有系列的颜色。

这是在 QLineSeriesQSplineSeries 的情况下线条(画笔)颜色,以及在 QScatterSeriesQAreaSeries 的情况下填充(画刷)颜色。

另请参阅

pen() brush()

访问函数
属性 pointLabelsClipping: bool#

此属性保留数据点标签的裁剪。

默认情况下此属性为 true。当启用裁剪时,图区域边缘的标签将被裁剪。

另请参阅

pointLabelsVisible

访问函数
属性pointLabelsColor: QColor#

此属性保留用于数据点标签的颜色。默认情况下,颜色是为主题标签定义的笔刷颜色。

另请参阅

pointLabelsFormat

访问函数
属性pointLabelsFont: QFont#

此属性保留用于数据点标签的字体。

另请参阅

pointLabelsFormat

访问函数
属性pointLabelsFormat: str#

此属性保留用于显示数据点标签的格式。

QXYSeries 支持以下格式标签

@index

数据点的索引,来自于系列中的位置。 [自 6.5 版本起]

@xPoint

数据点的 x 坐标。

@yPoint

数据点的 y 坐标。

例如,以下使用格式标签的示例将产生标签,显示括号内的数据点,由逗号分隔(x, y)

series->setPointLabelsFormat("@index: (@xPoint, @yPoint)");

默认情况下,标签的格式设置为 @xPoint, @yPoint。标签显示在绘图区域上,绘图区域边缘的标签会被切掉。如果点靠得很近,标签可能会重叠。

访问函数
属性 pointLabelsVisible: 布尔值#

此属性保存数据点标签的可见性。

默认情况下,此属性为false

访问函数
属性 pointsVisible: 布尔值#

此属性保存数据点是否可见以及是否应该绘制。

访问函数
属性 selectedColor: QColor#

此属性保存选定点的颜色。

这是标记为选定的点的填充(画笔)颜色。如果不指定,则使用 color 的默认值。

另请参阅

color

访问函数
append(point)#
参数:

QPointF

这是一个重载函数。

将数据点point添加到系列。

append(points)
参数:

points – .QPointF列表

这是一个重载函数。

将由points指定的数据点列表添加到系列。

append(x, y)
参数:
  • x – float

  • y – float

将坐标xy的数据点添加到系列。

at(index)#
参数:

index – int

返回类型:

QPointF

返回指定为index的内部点系列中的数据点。

bestFitLineColor()#
返回类型:

QColor

另请参阅

setBestFitLineColor()

属性 getter bestFitLineColorᅟ .

bestFitLineColorChanged(color)#
参数:

colorQColor

当用于最佳拟合线的颜色更改为color时,发出此信号。

属性 bestFitLineColorᅟ 的通知信号。

bestFitLineEquation(ok)#
参数:

ok – bool

返回类型:

.std.pairqreal,qreal

返回一个由两个数字组成的对,第一个数字是斜率因子,第二个数字是线性函数的截距,用于最佳拟合线。

这些因子是根据传递给系列的点使用最小二乘法计算得出的。

参数ok用于通过将其值设置为false来报告失败,并通过将其值设置为true来报告成功。

另请参阅

bestFitLineVisible()

bestFitLinePen()#
返回类型:

QPen

bestFitLinePenChanged(pen)#
参数:

penQPen

bestFitLineVisibilityChanged(visible)#
参数:

visible – bool

当最佳拟合线的可见性变为 visible 时,会发出此信号。

bestFitLineVisibleᅟ 的通知信号。

bestFitLineVisible()#
返回类型:

bool

bestFitLineVisibleᅟ 的属性获取器。

brush()#
返回类型:

QBrush

返回用于填充系列数据点的画刷。

另请参阅

setBrush()

clear()#

从系列中移除所有点。

另请参阅

pointsRemoved()

clearPointConfiguration(index)#
参数:

index – int

移除位于 index 的点的配置,并恢复从系列设置中得出的默认外观。

注意

这不会影响其他点的配置。

clearPointConfiguration(index, key)
参数:
  • index – int

  • keyPointConfiguration

从位于 index 的点移除由 key 标识的配置属性,并恢复从系列设置中得出的默认外观。

index 处的点中移除由 key 指定的配置类型,如颜色或大小,并允许将配置属性渲染为系列属性中指定的默认值。

注意

这不会影响其他点的配置。

clearPointsConfiguration()#

移除系列中所有点的配置,并恢复从系列设置中得出的默认外观。

clearPointsConfiguration(key)
参数:

keyPointConfiguration

从所有点移除由 key 标识的配置属性,并恢复从系列设置中得出的默认外观。

从所有带有配置自定义的点中删除由 key 指定的配置类型,例如颜色或大小,允许将该配置属性渲染为系列属性中指定的默认值。

clicked(point)#
参数:

QPointF

当用户通过点击图表中点 point 触发鼠标事件时,会发出此信号。

color()#
返回类型:

QColor

另请参阅

setColor()

属性 colorᅟ 的获取器。

colorBy(sourceData[, gradient=QLinearGradient()])#
参数:

根据传入的值列表设置点的颜色。从 sourceData 中获取的值将被排序并映射到 gradient

如果系列附加了 QColorAxis,则将使用轴的渐变。

colorChanged(color)#
参数:

colorQColor

当线(画笔)颜色更改为 color 时,会发出此信号。

属性 colorᅟ 的通知信号。

count()#
返回类型:

int

返回系列中数据点的数量。

deselectAllPoints()#

取消选择系列中的所有点。

注意

触发 selectedPointsChanged

另请参阅

setPointSelected()

deselectPoint(index)#
参数:

index – int

取消选择指定索引的 index 点。

注意

触发 selectedPointsChanged

另请参阅

setPointSelected()

deselectPoints(indexes)#
参数:

indexes – .列表 of int

indexes 列表传入的多个点标记为未选择。

注意

触发 selectedPointsChanged

另请参阅

setPointSelected()

doubleClicked(point)#
参数:

QPointF

用户在图表中双击数据点 point 时发出此信号。该 point 是第一次点击被触发的地方。

hovered(point, state)#
参数:

当鼠标悬停在图表中的点 point 上时发出此信号。当鼠标移动到该点时,state 转换为 true,当鼠标再次离开时,它变为 false

insert(index, point)#
参数:

在系列中将数据点 point 插入到由 index 指定的位置。

另请参阅

pointAdded()

isPointSelected(index)#
参数:

index – int

返回类型:

bool

如果给定 index 的点位于所选点中,则返回 true,否则返回 false。

注意

如果指定了所选颜色,则使用所选颜色绘制所选点。

lightMarker()#
返回类型:

QImage

获取用于在系列中每个点绘制标记的图像。

默认值是 QImage(),表示不会绘制任何高亮标记。

高亮标记可视化该系列的数据点,因此是 setPointsVisible (true) 的替代方案。这两个功能可以独立开启。

QScatterSeries 的元素不同,高亮标记不是通过 QGraphicsItem 表示,而是直接绘制(不创建对象)。然而,QXYSeries 的鼠标事件信号表现相同,这意味着如果单击/按下/悬停在光标上,您将获得的确切域值。如果您单击线条,您仍然会获得中间域值。在绘制和事件方面,高亮标记都在线条之上。

另请参阅

setLightMarker()

lightMarkerChanged(lightMarker)#
参数:

lightMarkerQImage

当高亮标记图像更改为 lightMarker 时,发出此信号。

另请参阅

setLightMarker()

markerSize()#
返回类型:

float

获取用于渲染系列中点的标记的大小。

默认大小取决于具体的 QXYSeries 类型。 QScatterSeries 的默认值为 15.0,QLineSeries 的默认值为系列画笔大小 * 1.5

另请参阅

setMarkerSize() markerSize

markerSizeChanged(size)#
参数:

size – float

当标记大小更改为 size 时,发出此信号。

pen()#
返回类型:

QPen

返回用于绘制系列数据点轮廓的画笔。

另请参阅

设置画笔

penChanged(pen)#
参数:

penQPen

当画笔变为 pen 时发出此信号。

pointAdded(index)#
参数:

index – int

当在由 index指定的位置添加一个点时,发出此信号。

另请参阅

append() insert()

pointConfiguration(index)#
参数:

index – int

返回类型:

包含类型为 .QXYSeries.PointConfiguration 的键和类型为 QVariant 的值的字典。

返回表示在 index处点的配置的映射。

使用点配置,您可以更改每个点的各个方面。

pointLabelsClipping()#
返回类型:

bool

属性 pointLabelsClipping 的获取器。

pointLabelsClippingChanged(clipping)#
参数:

clipping - bool

当数据点标签的剪辑变为 clipping 时发出此信号。

属性 pointLabelsClipping 的通知信号。

pointLabelsColor()#
返回类型:

QColor

另请参阅

setPointLabelsColor()

属性 pointLabelsColor 的获取器。

pointLabelsColorChanged(color)#
参数:

colorQColor

当数据点标签使用的颜色变为 color 时发出此信号。

属性 pointLabelsColor 的通知信号。

pointLabelsFont()#
返回类型:

QFont

另请参阅

setPointLabelsFont()

属性 pointLabelsFont 的获取器。

pointLabelsFontChanged(font)#
参数:

fontQFont

当用于数据点标签的字体更改为 font 时发出此信号。

pointLabelsFont 属性的修改通知信号。

pointLabelsFormat()#
返回类型:

str

另请参阅

setPointLabelsFormat()

pointLabelsFormat 属性的获取器。

pointLabelsFormatChanged(format)#
参数:

format – str

当数据点标签的格式更改为 format 时发出此信号。

pointLabelsFormat 属性的修改通知信号。

pointLabelsVisibilityChanged(visible)#
参数:

visible – bool

当数据点标签的可见性更改为 visible 时发出此信号。

pointLabelsVisible 属性的修改通知信号。

pointLabelsVisible()#
返回类型:

bool

pointLabelsVisible 属性的获取器。

pointRemoved(index)#
参数:

index – int

当从由 index 指定的位置删除一个点时发出此信号。

另请参阅

remove()

pointReplaced(index)#
参数:

index – int

当替换在由 index 指定的位置上的点时发出此信号。

另请参阅

replace()

points()#
返回类型:

. QPointF 列表

返回系列中的点。

pointsConfiguration()#
返回类型:

键为 .int 类型、值为 QXYSeries.PointConfiguration 类型的字典。

返回一个映射,以点的索引为键,点的配置为值。

pointsConfigurationChanged(configuration)#
参数:

configuration - 键为 .int 类型,值为 QXYSeries.PointConfiguration 的字典。

pointsRemoved(index, count)#
参数:
  • index – int

  • count - int 类型

当从索引指定的位置开始移除由 count 指定的点数时,这个信号将被触发。

另请参阅

removePoints() 《a class="reference internal" href="#PySide6.QtGraphs.QXYSeries.clear" title="PySide6.QtGraphs.QXYSeries.clear">clear()

pointsReplaced()#

所有点被其他点替换时,这个信号将被触发。

另请参阅

replace()

pointsVector()#
返回类型:

. QPointF 列表

注意

此函数已弃用。

使用 points() 代替。 返回系列中的点。

pointsVisible()#
返回类型:

bool

另请参阅

setPointsVisible()

属性 pointsVisibleᅟ 的获取函数。

pressed(point)#
参数:

QPointF

当用户按下图表中的数据点 point 并按下鼠标按钮时,这个信号将被触发。

released(point)#
参数:

QPointF

当用户释放指定由 point 指定数据点的鼠标按下时,会发出此信号。

删除(point)#
参数:

QPointF

从序列中移除数据点 point

另请参阅

pointRemoved()

删除(index)
参数:

index – int

从序列中移除由 index 指定位置的点。

另请参阅

pointRemoved()

删除(x, y)
参数:
  • x – float

  • y – float

从序列中删除坐标为 xy 的点。

另请参阅

pointRemoved()

replace(index, count)#
参数:
  • index – int

  • count - int 类型

从序列中移除从 index 指定位置开始的由 count 指定的点数。

另请参阅

pointsRemoved()

replace(oldPoint, newPoint)#
参数:

用指定的 newPoint 替换指定的 oldPoint

另请参阅

pointReplaced()

replace(oldX, oldY, newX, newY)
参数:
  • oldX – float

  • oldY – float

  • newX – float

  • newY – float

用坐标为 newXnewY 的点替换坐标为 oldXoldY 的点。如果旧点不存在,则不执行任何操作。

另请参阅

pointReplaced()

replace(index, newX, newY)
参数:
  • index – int

  • newX – float

  • newY – float

用坐标为 newXnewY 的点替换指定位置 indexed 的点。

另请参阅

pointReplaced()

replace(index, newPoint)
参数:
  • index – int

  • newPointQPointF

newPoint 指定的点替换指定位置 indexed 的点。

另请参阅

pointReplaced()

replace(points)
参数:

points – .QPointF列表

points 指定的点替换当前所有点。

注意

这比逐个替换数据点或先清空所有数据然后追加新数据要快得多。当点被替换时,会发出 pointsReplaced() 信号。

另请参阅

pointsReplaced()

selectAllPoints()#

将系列中的所有点标记为选中。

注意

触发 selectedPointsChanged

另请参阅

setPointSelected()

selectPoint(index)#
参数:

index – int

将位于 index 位置的点标记为选中。

注意

触发 selectedPointsChanged

另请参阅

setPointSelected()

selectPoints(indexes)#
参数:

indexes – .列表 of int

indexes 列表中传入的多点标记为选中。

注意

触发 selectedPointsChanged

另请参阅

setPointSelected()

selectedColor()#
返回类型:

QColor

selectedColorChanged(color)#
参数:

colorQColor

属性 selectedColorᅟ 的通知信号。

selectedLightMarker()#
返回类型:

QImage

返回在选中的系列点上绘制标记所用的图片。

默认值是 QImage(),这意味着常规的 lightMarker() 将被绘制。

如果更喜欢浅色标记而不是正常点,同时又想区分选中的点,则这相当于 selectedColor

selectedLightMarkerChanged(selectedLightMarker)#
参数:

selectedLightMarkerQImage

selectedPoints()#
返回类型:

. 整数列表

返回标记为选择的点索引的列表。选择的点无论点的可见性如何都是可见的。

selectedPointsChanged()#

该信号在点选择改变时发出。

setBestFitLineColor(color)#
参数:

colorQColor

另请参阅

bestFitLineColor()

属性 bestFitLineColor 的设置器。

setBestFitLinePen(pen)#
参数:

penQPen

setBestFitLineVisible([visible=true])#
参数:

visible – bool

另请参阅

bestFitLineVisible()

属性 bestFitLineVisible 的设置器。

setBrush(brush)#
参数:

brushQBrush

将用于在图表上绘制点的画笔设置为 brush。如果未定义画笔,则使用图表主题设置中的画笔。

另请参阅

brush() setTheme()

setColor(color)#
参数:

colorQColor

另请参阅

color()

设置属性 color 的值。

setLightMarker(lightMarker)#
参数:

lightMarkerQImage

将绘制系列中每个点标记所使用的图像设置为 lightMarker 的值。

默认值是一个默认的 QImage() (QImage::isNull() == true),表示不会绘制亮标记。您可以通过调用此函数并传入 null QImage (QImage()) 来重置为默认值(禁用)。

亮标记以视觉方式显示此系列的数据点,因此是 setPointsVisible(true) 的替代方案。如果使用此方法设置了亮标记,则不会显示设置为可见的点。

QScatterSeries 的元素不同,高亮标记不是通过 QGraphicsItem 表示,而是直接绘制(不创建对象)。然而,QXYSeries 的鼠标事件信号表现相同,这意味着如果单击/按下/悬停在光标上,您将获得的确切域值。如果您单击线条,您仍然会获得中间域值。在绘制和事件方面,高亮标记都在线条之上。

另请参阅

lightMarker()

setMarkerSize(size)#
参数:

size – float

设置用于在系列中绘制点的标记的 size

默认大小为 15.0。

另请参阅

markerSize

setPen(pen)#
参数:

penQPen

将用于在图表上绘制点的画笔设置为 pen。如果画笔未定义,则使用图表主题中的画笔。

另请参阅

pen() setTheme()

setPointConfiguration(index, configuration)#
参数:
  • index – int

  • configuration – 具有类型 .QXYSeries.PointConfiguration 的键和类型 QVariant 的值的字典。

使用所需的 configuration 启用自定义位于 index 的点的外观。

使用点配置,您可以更改每个点的外观的各个方面。

点的配置表示为一个具有 pointConfiguration 键和 QVariant 值的哈希表。例如

QLineSeries *series = new QLineSeries();
series->setName("Customized series");
series->setPointsVisible(true);

*series << QPointF(0, 6) << QPointF(2, 4) << QPointF(3, 6) << QPointF(7, 4) << QPointF(10, 5)
        << QPointF(11, 1) << QPointF(13, 3) << QPointF(17, 6) << QPointF(18, 3)
        << QPointF(20, 2);

QChart *chart = new QChart();
chart->addSeries(series);
chart->createDefaultAxes();

QHash<QXYSeries::PointConfiguration, QVariant> conf;
conf[QXYSeries::PointConfiguration::Color] = QColor(Qt::red);
conf[QXYSeries::PointConfiguration::Size] = 8;
conf[QXYSeries::PointConfiguration::LabelVisibility] = true;

series->setPointConfiguration(4, conf);

conf.remove(QXYSeries::PointConfiguration::Color);
conf[QXYSeries::PointConfiguration::LabelFormat] = "This Point";
series->setPointConfiguration(6, conf);

在这个示例中,您可以看到一个默认的具有10个点的 QLineSeries,并且修改了其中两个点的配置。这两个修改过的点明显比其他点大,外观源自系列配置。默认情况下,点没有标签,但是由于 LabelVisibilityLabelFormat 配置值,索引为4的点有一个标签。索引为6的点有自定义标签 此点,得益于 LabelFormat 配置值。以下是以这种方式创建的图表示例

setPointConfiguration(index, key, value)
参数:
  • index – int

  • keyPointConfiguration

  • value – object

允许自定义点的配置的特定方面。

注意

点的配置概念提供了一种灵活的方式来配置点的外观的各种方面。因此,值需要有弹性和可变类型,如QVariant。请参阅 PointConfiguration 了解为某些 key 需要传递什么 value

另请参阅

pointsConfiguration()

setPointLabelsClipping([enabled=true])#
参数:

enabled – bool

另请参阅

pointLabelsClipping()

属性 pointLabelsClippingᅟ 的设置器。

setPointLabelsColor(color)#
参数:

colorQColor

另请参阅

pointLabelsColor()

属性 pointLabelsColorᅟ 的设置器。

setPointLabelsFont(font)#
参数:

fontQFont

另请参阅

pointLabelsFont()

属性 pointLabelsFontᅟ 的设置器。

setPointLabelsFormat(format)#
参数:

format – str

另请参阅

pointLabelsFormat()

属性 pointLabelsFormat 的设置器。

setPointLabelsVisible([visible=true])#
参数:

visible – bool

另请参阅

pointLabelsVisible()

属性 pointLabelsVisible 的设置器。

setPointSelected(index, selected)#
参数:
  • index – int

  • selected – bool

将给定 index 处的点标记为已选择或未选择,具体取决于 selected

注意

已选择点如果指定了颜色,则使用所选颜色绘制。发出 selectedPointsChanged

setPointsConfiguration(pointsConfiguration)#
参数:

pointsConfiguration – 键为 .int 类型,值为 QXYSeries.PointConfiguration 的字典。

允许根据 pointsConfiguration 指定的配置自定义多个点的配置。

另请参阅

pointsConfiguration()

setPointsVisible([visible=true])#
参数:

visible – bool

另请参阅

pointsVisible()

属性 pointsVisible 的设置器。

setSelectedColor(color)#
参数:

colorQColor

属性 selectedColor 的设置器。

setSelectedLightMarker(selectedLightMarker)#
参数:

selectedLightMarkerQImage

将用于绘制所选系列点标记的图像设置为 selectedLightMarker

默认值是 QImage(),这意味着常规的 lightMarker() 将被绘制。

如果你更喜欢亮标记而不是普通点,但仍然想区分所选点,这相当于 selectedColor

sizeBy(sourceData, minSize, maxSize)#
参数:
  • sourceData – .qreal 列表

  • minSize – float

  • maxSize – float

根据传入的值列表设置点的大小。从 sourceData 获取的值会被排序并映射到介于 minSizemaxSize 之间的点大小。

注意

如果 sourceData 的长度小于系列中点的数量,则系列末尾点的尺寸将保持不变。

toggleSelection(indexes)#
参数:

indexes – .列表 of int

将给定 indexes 的点的选择状态切换到相反状态。执行

注意

触发 selectedPointsChanged

另请参阅

setPointSelected()