0

コードに四分木に似た構造があり、gnuplotで視覚化したいと思います。これは、長方形のサブディビジョンを見たいことを意味します。これをgnuplotに入れたいのは、このアウトライン上に2次元関数をプロットして、細分割の量と関数値の相関関係を示したいからです。

ayoneはこれを行う方法についてのアイデアを持っていますか?

4

1 に答える 1

1

私が考えることができる2つの解決策があります-しかし、それらは両方ともあなたの側でかなりの量の仕事を伴います。基本的に、各行をテキストファイルに入れる必要があります。これを行うには2つの方法があります。データファイル内の行に各行セグメントを配置し、矢印でプロットする最初の方法です。

#datafile -- Each row represents a line.
x11 y11 x12 y12
x21 y21 x22 y22
...

次に、それを次のようにプロットします。

set style arrow 1 nohead
plot 'datafile' u 1:2:($3-$1):($4-$2) w vec

ポイントのグループを空白で区切って、各ポイントを単独で配置する2番目の方法:

#datafile -- each row represents a point
x11 y11
x12 y12

x21 y21
x22 y22

...

次に、これを次のようにプロットします。

plot 'datafile' u 1:2 w l

データをこの形式に変換するのはそれほど難しいことではありません。リーフに到達するまで各ブランチをトラバースし、そのリーフに関連付けられている4行を書き出します。一部の行(またはその一部)は複製されますが、それはおそらくそれほど問題にはなりません...

編集

2D関数を上にプロットする必要があることに気づきませんでした。この場合、splotデータをプロットするためにを使用する必要があります。

set term push  #save terminal info
set term unknown
set contour
set cntrparam ... #whatever you need to make your contours appear the way you want
set table "junk_temporary_file.dat"
splot f(x,y)  #whatever function you choose goes here.
unset table
unset contour

set term pop  #restore terminal info
set view map
splot 'datafile'                u 1:2:(0.0) w l,\
      'junk_temporary_file.dat' u 1:2:3     w l #optional line specs here.

色が必要な場合は、少し(たくさん)簡単です:

set view map
splot f(x,y) w pm3d,\
      'datafile' u 1:2:(0.0) w l
于 2012-06-26T14:00:33.930 に答える