问题标签 [qtcharts]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1283 浏览

qt - 在 QML 中自定义 Bar-series 和 BarCategoryAxis

我需要自定义BarCategoryAxis标签和BarSeries. 以下是代码:

1)如何X Axis在网格下方准确对齐标签?目前,它位于以下中心:

在此处输入图像描述

我尝试过,ValueAxis但它不会正确绘制条形图,但标签将正好位于网格下方。

2)目前,slider移动图形但不流畅。任何人都可以提出更好的方法吗?

0 投票
0 回答
633 浏览

c++ - Qt:无法解决错误:多重定义

所以我用谷歌搜索了这个问题并搜索了这个网站,但我发现的一切都不起作用。下面是头文件中比较麻烦的几行:

这是头文件:

这是ccp文件:

我尝试在每个声明之前添加 extern,但找不到我缺少“;”的地方 在一行的末尾。任何帮助都会很棒。我正在使用全新安装的 Ubuntu 和 Qt Creator。这个项目是从我之前的安装中导入的。

希望这是足够的信息。关于这个错误的许多其他问题都缺乏信息,所以我希望这个问题也能解决这个问题。

以下是错误代码:

/home/bandito/programming/build-etf-ipo-new-Unnamed-Debug/chartview.o:-1: 在函数QList<QtCharts::QAbstractSeries*>::node_destruct(QList<QtCharts::QAbstractSeries*>::Node*, QList<QtCharts::QAbstractSeries*>::Node*)': /home/bandito/programming/etf-ipo-new/chartview.cpp:5: error: multiple definition ofChartView::ChartView(QtCharts::QChart*, QWidget*)' /home/bandito/programming/ etf-ipo-new/chartview.cpp:5: 首先在这里定义/home/bandito/programming/build-etf-ipo-new-Unnamed-Debug/chartview.o:-1: 在函数 QList<QtCharts::QAbstractSeries*>::node_destruct(QList<QtCharts::QAbstractSeries*>::Node*, QList<QtCharts::QAbstractSeries*>::Node*)': /home/bandito/programming/etf-ipo-new/chartview.cpp:5: error: multiple definition of ChartView::ChartView(QtCharts: :QChart*, QWidget*)' /home/bandito/programming/etf-ipo-new/chartview.cpp:5: 这里首先定义/home/bandito/programming/build-etf-ipo-new-Unnamed-Debug/chartview .o:-1: 在函数 ChartView::doneDrawing(bool)': /home/bandito/programming/etf-ipo-new/chartview.cpp:24: error: multiple definition of ChartView::doneDrawing(bool)' /home/bandito/programming/etf-ipo-new/chartview.cpp:24: 首先定义在这里 /home/bandito/programming/build-etf-ipo -new-Unnamed-Debug/chartview.o:-1:在函数中 ChartView::mouseMoveEvent(QMouseEvent*)': /home/bandito/programming/etf-ipo-new/chartview.cpp:28: error: multiple definition of ChartView::mouseMoveEvent(QMouseEvent*)' /home/bandito/programming/etf-ipo-new/chartview.cpp:28: 首先在这里定义:-1: error: collect2: error: ld returned 1 exit status

0 投票
1 回答
1195 浏览

c++ - qt将鼠标位置转换为图表坐标系

我想在显示QBarSeries 的 QChart 上显示标注。我正在努力将鼠标的位置转换为 qchart 坐标系,以便可以在标注中将其用作锚点。我想在我的

事件。

0 投票
1 回答
3612 浏览

qt - 在 QChartView 上实现选择

我想基于QChartQChartView实现图表选择。类家族有一个很大的优势——易于使用 openGL动画,例如:

QChartView类提供有用的缩放功能 - QChartView ::setRubberBand()

在此处输入图像描述

主要问题是橡皮筋只能用于缩放,但我需要在没有缩放的情况下实现水平选择,因为该功能通常在音频编辑器中实现: 在此处输入图像描述

现在,当我继承 QChartView 时,我可以在选择后禁用缩放:

然后我就不能在鼠标键释放事件上实现缩放动作:

所以,我现在的问题:

  1. 视觉橡皮筋的边界如何映射到真实图表的坐标。即,如何将选择映射到图表上的线系列?现在我收到相同的错误坐标:

    /li>

输出:

  1. 现有的橡胶选择如何与视图一起按比例调整大小?

编辑:可能是一个有用的关键字 - QGraphicsScene::setSelectionArea()

Qt 5 芯片示例提供了不错的橡皮筋选择,但该示例基于QGraphicsView,而不是基于 QChartView。

0 投票
0 回答
157 浏览

python - QCategoryAxis 次要刻度线不可见

在 PyQt5 中,我试图启用 QcategoryAxis 的次要刻度线。使用 setMinorGridLineVisible 和 setMinorTickCount 方法似乎不起作用,就像使用简单的 QValueAxis 一样。这是一个错误,还是我错过了什么?使用下面的代码片段,类别标签和主要刻度看起来很好,但缺少次要刻度线。

0 投票
2 回答
5030 浏览

c++ - 使用鼠标滚轮缩放 QChartView 的 x 轴

在我的应用程序中,我QChart用来显示折线图。不幸的是,Qt Charts 不支持使用鼠标滚轮进行缩放和鼠标滚动等基本功能。是的,有 RubberBand 功能,但仍然不支持滚动等对用户来说不太直观的端。此外,我只需要缩放 x 轴,某种setRubberBand(QChartView::HorizontalRubberBand)但使用鼠标滚轮。到目前为止,在深入研究后,QChartView我使用了以下解决方法:

这可行,但放大然后缩小不会导致相同的结果。有一个小的偏差。调试后我发现chart()->plotArea()总是返回相同的矩形,所以这个解决方法是没用的。

有什么方法可以只得到一个可见区域的矩形吗?或者可能有人可以指出正确的解决方案如何通过鼠标为 QChartView 进行缩放/滚动?

0 投票
1 回答
1186 浏览

c++ - 将 qcharts 模块安装到 yocto sdk

我尝试为yocto 平台交叉编译qt 图表示例。我执行以下步骤来编译我的 qt 程序:

  • 源 /opt/myimage/2.1.2/environment-setup-cortexa9hf-neon-poky-linux-gnueabi
  • qmake -o Makefile areachart.pro
  • 制作

但是当我添加QT += charts到任何项目运行 qmake时,qmake -o Makefile areachart.pro我遇到了这个错误:
Project ERROR: Unknown module(s) in QT: charts 这是输出qmake -v

我应该添加qtcharts模块我的yocto SDK以便能够编译示例吗?如果是的话怎么办?

由于某些原因,我能够从源代码交叉编译Qtqtcreator并获取 qt 示例和 qtchart 库本身的二进制文件。我还在目标平台上运行 qt 示例,方法是将结果libQtCharts.so文件和其他文件手动放入目标中/usr/lib//usr/include/目标上,并且能够在目标上绘制图表。

但是,我需要在我的项目中包含图表并运行qmake上述步骤。但我得到的是Project ERROR: Unknown module(s) in QT: charts 我试图把libQtCharts.so我从手动编译 qt 源代码中得到的,/opt/myimage/2.1.2/sysroots/cortexa9hf-neon-poky-linux-gnueabi/usr/lib但仍然无法获得 make 文件qmake -o Makefile areachart.pro

0 投票
1 回答
2107 浏览

qt - 在 qml 中的 qtcharts 上拖动一个点

我正在尝试在 qtcharts 上的 LineSeries 上拖动一个点。这是我的代码:

当我在 Lineserie 上按下一个点时,我可以看到我在控制台中按下和释放的点的 x,y。不过两者都是一样的,所以我看不到它发布的地方。我想将一个点拖到另一个地方,所以如果我按下一个点,它会跟随(触摸屏上的鼠标/手指)指针,直到我在图表上释放。任何人都可以帮助我从哪里开始以及我应该使用哪些属性?

0 投票
0 回答
232 浏览

qt - 如何在chartview上禁用x轴上的点拖动

我有一个 qtchart,其线条在图表上带有 5 个点。我可以在axisX和axisY的最小值和最大值内的x和y轴上拖动这些点。如何禁用 x 轴上的点拖动?因此可以在图表上垂直拖动点。这是我的代码:

到目前为止,在这种情况下,我可以通过更改onPositionChanged为以下代码来禁用 x 轴上的一个点的拖动,但有两个问题,首先这只是一个点,其次,它不会完全禁用拖动,而是该点可以是在 2 到 4 之间的 x 轴上拖动,但不能将其拖动到此范围之外。

0 投票
1 回答
962 浏览

c++ - Qt 如何连接 RubberBandChanged 信号

我尝试将来自 QChartView 类的 RubberBandChanged 信号链接到 MainWindow 类中的特定函数。

主窗口.h

主窗口.cpp

当我在图表中使用 RubberBand 时,我从不输入 RubberZoomAdapt()。

有什么想法可以解决这个问题吗?

谢谢。