0

gnuplot で 600px*600px の画像をプロットしていますが、xtics をピクセル システムとは異なる座標系に対応させたいと考えています。そのままでは、xtics は 0、100、200、...、500、600 になります。それらを同じ場所に配置したいのですが、値が異なります。xtic[i] = (xtic[i]*c1) + c2 のように、ティックが均一に変更されるようにする方法はありますか?

編集:これが私のコードです。また、私がやろうとしていることは、xtics と ytics を経度と緯度に具体的に対応させることであることを明確にする必要があります。たとえば、xtic=0 -> xtic=$minlat、xtic=$maxx -> xtic=$maxlat のような変換を追加したいと思います。

#!/bin/sh                                                                               

inputfilename=$1
outputfilename=$2
minlat=$3
maxlat=$4
minlon=$5
maxlon=$6
imagexsize=$7
imageysize=$8
maxx=$(($imagexsize - 1))
maxy=$(($imageysize - 1))

windowxsize=$(($imagexsize+5+5))
windowysize=$(($imageysize+5+5))

imagename=${inputfilename%.*}

gnuplot <<EOF                                                                           

set terminal png size $windowxsize,$windowysize                                         
unset key                                                                               
unset colorbox                                                                          
set output "$outputfilename"                                                            
set lmargin 5                                                                           
set bmargin 5                                                                           
set rmargin 5                                                                           
set tmargin 5                                                                           
set size square                                                                         
set xrange [0:${maxx}]                                                                  
set yrange [0:${maxy}]                                                                  
set palette grey                                                                        
set label "$imagename" at screen 0.3,0.95                  
plot "$inputfilename" binary array=${imagexsize}x${imageysize} format='%ushort' with image                                                                                     

EOF 
4

1 に答える 1

0

これは、'plot' コマンドに 'using' 引数を追加することで非常に簡単に実現できます。

以下は、10 のオフセットと 0.5 のスケールを追加した例です。

plot '-' using (($1+10)/2):(($2+10)/2) with linespoints
1 2
3 4
5 6
e
于 2014-01-06T22:32:28.930 に答える