13

Gnuplot の png ターミナルで replot を使用しようとしています。

次のようにすると、1 つのグラフに 2 つのプロットが問題なく表示されます。

plot sin(x)/x
replot sin(x)

png 端末タイプに対して同じことを行うと、結果の png ファイルには最初のプロットのみが含まれます。

set terminal png
set output 'file.png'
plot sin(x)/x
replot sin(x)

私のpngファイルで2番目のプロットを取得するために、最後に何かが欠けていますか?

4

1 に答える 1

15

これは実際には非常に良い質問であり、ここでの動作は端末に依存します。一部の端末 (例えば、postscript) では、それぞれの新しいページが表示されますreplot。いくつかの解決策があります...

最初のオプション:端末/出力を設定する前にプロットを作成し、端末/出力を設定した後に再度プロットすることができます。

plot sin(x)/x
replot sin(x)
set terminal png
set output 'file.png
replot

このオプションは、同じものを複数の端末でプロットしたい場合に便利な場合がありますが、それ以外の目的で使用することはめったにありません。

2番目の(より良い)オプション:複数のプロットを1つのコマンドにまとめて、それぞれをコンマで区切ることができます。

set terminal png
set output 'file.png'
plot sin(x)/x, sin(x)

私は 2 番目の方法を非常に好みます。マルチプロット環境では、これが同じプロットに複数のグラフを配置する唯一の方法です。プロットする関数が非常に長い場合は、gnuplot の行継続で行を分割できます (\行末 -- の後には何も許可され\ず、空白でさえも許可されません)。

plot sin(x)/x with lines linecolor rgb "blue" linetype 7 lineweight 4, \
     sin(x),                                                           \
     cos(x)
于 2012-06-15T12:00:17.153 に答える