私はgnuplotを使っていくつかのマトリックスファイルをヒートマップとしてプロットしています。これらの行列は、水平(行列の高さは幅よりも小さい)または垂直(行列の高さは幅よりも大きい)にすることができます。Gnuplot:カラーボックスの固定幅を設定する
カラーボックスを除くすべてがうまくいきます。私はset size ratio -1
を設定して、アスペクト比が1:1のクワットラットでヒートマップを取得しています。このコマンドは、グラフを拡大または縮小します。しかし、カラーボックスも伸縮します。
私は、マトリックスファイルのいくつかは非常に小さい幅を持っているので、私のカラーボックスのための一定の幅を持っていると思います - これは非常に薄いカラーボックスになります。私は自分のカラーボックスの幅を手動で設定しようとしました。しかし、原点と完全なサイズを手動で設定しなければ、これは不可能です。
例横長
:
unset key
set cbrange [0:5]
set xrange [0:10]
set yrange [0:5]
set size ratio -1
set cbtics out nomirror
$map1 << EOD
5 4 3 1 0 5 4 3 1 0
2 2 0 0 1 2 2 0 0 1
0 0 0 1 0 0 0 0 1 0
0 0 0 2 3 0 0 0 2 3
0 1 2 4 3 2 2 0 0 1
EOD
plot '$map1' using ($1+.5):($2+.5):($3) matrix with image
垂直:
unset key
set cbrange [0:5]
set xrange [0:5]
set yrange [0:10]
set size ratio -1
set cbtics out nomirror
$map1 << EOD
5 4 3 1 0
2 2 0 0 1
0 0 0 1 0
0 0 0 2 3
0 1 2 4 3
5 4 3 1 0
2 2 0 0 1
0 0 0 1 0
0 0 0 2 3
2 2 0 0 1
EOD
plot '$map1' using ($1+.5):($2+.5):($3) matrix with image
起源と全体の大きさの両方を指定することが可能ですか?たとえば、 'set colorbox user origin graph 1.1、最初の0サイズの最初の1、グラフ1 'は、ピクセルの1つと同じ幅で、グラフ全体の高さのカラーボックスを作成します。この場合、カラーバーに少し余裕を持たせるために右余白を設定する必要があります。 – user8153
ありがとう@ user8153!あなたは私を非常に助けました! 'set colorbox user origin graph 1、graph 0 size cbwidth、graph 1'を' set rmargin in screen 0.875'と組み合わせて使うことにしました。 'cbwith'は静的な幅で可変です。明日私はすべての詳細を完全に答えます。 – rweisse