我编写了一个程序,它生成 N 条布朗运动轨迹,增量为 I~N(0,dt)。我正在测试它们的条件 W(1)>=1 && W(2)>=2。当然,作为输出,我将时间点数据保存在文件“Wiener_data.dat”中。现在满足条件 1 的点保存在“Wiener_data_pts1.dat”中,条件 2 保存在“Wiener_data_pts2.dat”中。我将满足这两个条件的轨迹索引保存在单独的文件“Wiener_data_index.dat”中。
# total number of trajectories satisfying conditions 1 and 2
12
# indices
143 146 173 281 354 496 503 610 613 755 761 965
我想要做的是:像这样在 GnuPlot 中绘制轨迹: N=1000 Trajectories
所以我手动做了
plot for [i=1:1000] 'Wiener_data.dat' using 1:i+1 with linespoints ls 3 ,
for [i=143:143] 'Wiener_data.dat' using 1:i+2 with linespoints ls 4 ,
for [i=146:146] 'Wiener_data.dat' using 1:i+2 with linespoints ls 4 ,
for [i=173:173] 'Wiener_data.dat' using 1:i+2 with linespoints ls 4 ,
for [i=281:281] 'Wiener_data.dat' using 1:i+2 with linespoints ls 4 ,
for [i=354:354] 'Wiener_data.dat' using 1:i+2 with linespoints ls 4 ,
for [i=496:496] 'Wiener_data.dat' using 1:i+2 with linespoints ls 4,
for [i=503:503] 'Wiener_data.dat' using 1:i+2 with linespoints ls 4 ,
for [i=610:610] 'Wiener_data.dat' using 1:i+2 with linespoints ls 4 ,
for [i=613:613] 'Wiener_data.dat' using 1:i+2 with linespoints ls 4 ,
for [i=755:755] 'Wiener_data.dat' using 1:i+2 with linespoints ls 4 ,
for [i=761:761] 'Wiener_data.dat' using 1:i+2 with linespoints ls 4 ,
for [i=965:965] 'Wiener_data.dat' using 1:i+2 with linespoints ls 4 ,
Wiener_data_pts1.dat' using 1:2 with points ls 2 , 'Wiener_data_pts2.dat'
using 1:2 with points ls 5
当然,对于大量轨迹来说,这将是相当乏味的。
因此,鉴于“Wiener_data_index.dat”中的索引,我想以不同的颜色绘制特定的轨迹。有什么办法可以做到吗?也许通过将索引数据文件保存到一个数组中,然后在迭代索引时访问它的值?