gnuplot 中的逻辑映射
Logistic mapping in gnuplot
我在绘制数据时遇到了很大的问题。
首先,我从我的 C++ 程序中获得了文件 data.dat,它实现了 logistic map.
Data.dat 如下所示:第一列应该是数字 k,它应该位于图的底部。当 k 在 [2,3) 范围内时,一切都很好,只有一个吸引子(每个 k 对应的值,始终在 (0,1) 范围内),但是当它在 [3,4) 范围内时,事情就得到了复杂的。
对于每个点 k,有 2 个最多 100 个点对应于每个 k。
这些点中的每一个都在单独的列中,但我不知道如何将它们与某些 k 联系起来。
这是我的点数据示例:2.5、3、3.2、3.5、3.8 和 3.99999,为清楚起见,除以换行符(在我的原始数据文件中没有用换行符除以)
感谢您的帮助,干杯。
Gnuplot 无法正确处理这种数据格式。修改您的程序,使其在每一行中打印 k
后跟一个值,或者在绘图之前使用简短的 awk
脚本处理您的数据文件:
plot '< awk ''{ for(i = 1; i <= NF; i++) print , $i}'' file.txt' using 1:2 with dots notitle
我在绘制数据时遇到了很大的问题。 首先,我从我的 C++ 程序中获得了文件 data.dat,它实现了 logistic map.
Data.dat 如下所示:第一列应该是数字 k,它应该位于图的底部。当 k 在 [2,3) 范围内时,一切都很好,只有一个吸引子(每个 k 对应的值,始终在 (0,1) 范围内),但是当它在 [3,4) 范围内时,事情就得到了复杂的。 对于每个点 k,有 2 个最多 100 个点对应于每个 k。 这些点中的每一个都在单独的列中,但我不知道如何将它们与某些 k 联系起来。
这是我的点数据示例:2.5、3、3.2、3.5、3.8 和 3.99999,为清楚起见,除以换行符(在我的原始数据文件中没有用换行符除以)
感谢您的帮助,干杯。
Gnuplot 无法正确处理这种数据格式。修改您的程序,使其在每一行中打印 k
后跟一个值,或者在绘图之前使用简短的 awk
脚本处理您的数据文件:
plot '< awk ''{ for(i = 1; i <= NF; i++) print , $i}'' file.txt' using 1:2 with dots notitle