0

gnuplotデータファイルをプロットするために次のスクリプトを使用します

reset
unset key
set size 1,1

set xrange [-10.1:11]
set yrange [-45:45]

set xlabel 'x'
set lmargin 6
set label 1 "~x{0.7.}" font "Helvetica, 20" at graph -0.1, graph 0.5

set xtics 2
set ytics 15

set mxtics 5
set mytics 5

plot "pss_data.dat" u 1:2 w dots lc rgb 'black'

set term postscript eps enhanced "Helvetica" 20 size 7in, 5in
set output 'plot.eps'
replot

reset
set terminal windows

quit

エクスポートされた .eps ファイルは次のとおりです。

ここに画像の説明を入力

実際、これは変換を行うために Adob​​e Acrobat XI を使用した対応する .pdf ファイルです。ただし、.pdf 出力には、プロットだけでなく、その上の不要な黒い領域もすべて含まれています。白い領域を取り除くために、コマンドラインを使用しました

epstopdf plot.eps

出力は次のとおりです

ここに画像の説明を入力

これで、白い領域は削除されましたが、y 軸のラベルも欠落しています。

何か案は?.pdf ファイルにプロットのみ (上記の白い領域なし) を入れたいが、y 軸にラベルを付けたい。

よろしくお願いします。

4

2 に答える 2

2

バウンディングボックスが正しく設定されていない可能性があります。作成したepsでepstoolを使用してみることができます。

epstool --bbox myeps.eps myneweps.eps

これでバウンディングボックスが正しく計算されますが、マージンはゼロになります。インストールできない/インストールしたくない場合は、バウンディングボックスを手動で調整してみてください。.epsファイルの先頭近くに次のような行があります。

%%BoundingBox: 50 50 554 770

4つの数値は、出力のyオフセット、xオフセット、y max、およびx maxです(マージンに関しては、上、左、下、右と考えることができます)。2番目の数値を減らして(左マージンを増やして)、y軸のラベルが表示されるかどうかを確認できます。

于 2013-02-04T14:24:25.380 に答える
1

pdfcairognuplotの pdf 端末の 1 つ (私ylabelset label 1 ... at graph.... 目的に合わせて変更できる簡単なスクリプトを次に示します。

set term pdfcairo enhanced font "Helvetica,20"
set output "test.pdf"
set ylabel "~x{0.7.}" rotate by 0  #default rotation is 90
set xlabel "x"
plot sin(x)

最終的に、スクリプトで起こっていることは、gnuplot がラベルを表示可能なキャンバスから外してしまうということです。なんらかの理由で、アドビはまだ(変換された)出力にラベルを付けていますが、この場合は間違っていると断言します-(それらは本質的にバウンディングボックスを無視しています)。もちろん、andyras の回答で提案されているように、境界ボックスを移動/調整することもできますが、それはかなりハックな解決策だと思います。

于 2013-02-04T16:27:30.397 に答える