C++ 如何动态绘制(x,y,z)坐标

C++ 如何动态绘制(x,y,z)坐标,c++,arrays,plot,coordinate,ros,C++,Arrays,Plot,Coordinate,Ros,我的应用程序获得x、y、z坐标,如下所示: x:-0.020941 y:-0.241276 z:0.956 -------------- x:0.0782352 y:-0.159108 z:0.923 -------------- x:0.0665857 y:-0.140757 z:0.885 -------------- x:0.0485952 y:-0.0859762 z:0.785 -------------- x:0.04494 y:-0.0477933 z:0.749 -------

我的应用程序获得x、y、z坐标,如下所示:

x:-0.020941
y:-0.241276
z:0.956
--------------
x:0.0782352
y:-0.159108
z:0.923
--------------
x:0.0665857
y:-0.140757
z:0.885
--------------
x:0.0485952
y:-0.0859762
z:0.785
--------------
x:0.04494
y:-0.0477933
z:0.749
--------------
x:-0.183467
y:0.0505905
z:0.64
--------------
x:-0.0519514
y:-0.0137343
z:0.627
--------------
x:-0.0630648
y:-0.0206495
z:0.586
--------------
x:-0.0774924
y:-0.0189667
z:0.569
--------------
x:0.0100971
y:-0.0100971
z:0.558
--------------
x:0.00456857
y:-0.0126905
z:0.533
--------------
x:0.000491429
y:-0.00835429
z:0.516
--------------
x:-0.0227838
y:-0.01018
z:0.509
--------------
x:-0.0222133
y:-0.00589333
z:0.476
--------------
x:-0.10161
y:-0.00850476
z:0.47
--------------
x:-0.0775429
y:0.0162095
z:0.46
--------------
x:-0.0897705
y:0.0219057
z:0.451
--------------

我所做的是每3秒钟从这个流中获取最小的z值,并在2d数组中绘制它的位置(使用它的x和y位置)


我的问题是如何绘制这个结果,因为我不知道最大或最小分数是多少,而且它们都是双精度类型,而不是索引的int。有没有一个“好”的方法来描绘这个?我还希望能够根据数据的数组索引来处理这些数据。e、 g.查找数据在何处聚集等。

看来,您的问题是由于一心想使用数组。使用向量将允许您动态添加网格点,并在需要时进行平均(和执行其他计算)


这就是说,如果你真的想使用数组,那么就像你注意到的那样,你不能使用双精度和/或负值作为索引。你可以通过增加一个偏移量,乘以你的x,y值,得到一个四舍五入的整数和一个不在(0,0)但可能在(2,2)的中心,或者其他什么东西来计算出一个系统,但这将是非常笨拙和混乱的

我很难理解你的问题是什么。当分数都是
double
类型时,您是否询问如何查找最大或最小分数?不完全是,我想将分数添加到2d数组中,但一些分数表示负数,而其他分数表示高于1的分数。我需要找到一种方法将它们添加到一个数组中,这样它们就不会扭曲结果或导致错误。现在还不清楚您想在2d数组中使用数据做什么-简单地按原样存储数据本身不会是错误。你想把它画成图像还是什么的?对不起,我正在使用数组来存储一段时间的数字,这样我就可以找到它们的平均位置。当一个点在那里持续5秒时,它将被删除。点将被连续添加。这些点被添加为坐标,然后通过平均它们,我可以为它们找到一个中心位置。但是我不知道如何动态地将它们添加到这个数组中,因为坐标值不是数组索引。它们只是位置,我需要“映射”或“绘制”到数组中。