GNUPLOT:提取二进制二维数组并打印

GNUPLOT:提取二进制二维数组并打印,plot,binary,gnuplot,Plot,Binary,Gnuplot,我正在努力处理GNUPLOT二进制数据 我有一个二进制文件,由MATLAB frite函数打印,按列顺序打印 我正在打印一个Nx2数组,它是xy平面上点的集合,我猜它存储为x1..xn y1..yn,作为二进制文件中的连续记录。你同意吗?考虑到我仍然不清楚二进制存储的含义。我习惯使用ASCII文件,带有漂亮的分隔符和\n 所以我想用gnuplot绘制这些点。我一直在阅读二进制通用文档,最后尝试了以下内容: plot 'datafile.bin' binary array=N:N w l 这意味

我正在努力处理GNUPLOT二进制数据

我有一个二进制文件,由MATLAB frite函数打印,按列顺序打印

我正在打印一个Nx2数组,它是xy平面上点的集合,我猜它存储为x1..xn y1..yn,作为二进制文件中的连续记录。你同意吗?考虑到我仍然不清楚二进制存储的含义。我习惯使用ASCII文件,带有漂亮的分隔符和\n

所以我想用gnuplot绘制这些点。我一直在阅读二进制通用文档,最后尝试了以下内容:

plot 'datafile.bin' binary array=N:N w l
这意味着我的数据文件由两个数组组成,每个数组由N个元素组成。Gnuplot生成一行,首先跟随第一个数组的值,然后跟随第二个数组的值,这两个数组的间隔都是1:N

我尝试使用第一个数组作为绘图的x轴,第二个数组作为y轴,因此我尝试:

plot 'datafile.bin' binary array=N:N u 1:2 w l
它将连续再次绘制两个阵列,而不是xy绘制。我错在哪里

非常感谢


编辑:我试图将scan=xy关键字应用于两行,但他告诉我我的文件是一维记录。所以我猜u 1:2没有意义

我认为gnuplot无法处理您描述的数据类型。它不像matlab那样了解数组和矩阵

使用成对的x、y值编写数据文件

那你可以

 plot dataf binary format='%float%float' using 1:2". 
(如果x、y值都是浮点数)

“array”关键字用于文件仅包含函数值,并且希望gnuplot构造自变量的情况。完全不同