10

次のデータを使用してスタックヒストグラムを作成しようとしています。

8.01    1   5   1   
8.02    3   5   1
8.03    4   4   1
8.04    3   4   1
8.05    1   2   1

私は4番目の例のスクリプトを適応させようとしましたが、現時点ではこれを使用しています。

set title "Test"
set key invert reverse Left outside
set key autotitle columnheader
set style data histogram
set style histogram rowstacked
set style fill solid border -1
set boxwidth 0.75

plot 'test.dat' using 2:xtic(1),  '' using 2 title 'Col1', '' using 3 title 'Col2', '' using 4 title 'Col3'

コピーした部分でよくわからない部分はですusing 2:xtic(1)xticこれにより、最初の列として値が使用されるようになります。これが私が望むものです。using 2しかし、その部分が何を表しているのかわかりません。これは、スクリプトが生成するもののスクリーンショットです。

ここに画像の説明を入力してください

そこにあるべきではない赤いバーを除いて、すべてが画像上で問題ありません。なぜそれが表示されているのか、そしてそれを取り除く方法を誰かが私に説明できますか?

4

1 に答える 1

14

using 2gnuplotがプロットしているデータにファイルの2番目の列を使用することを意味します。xデータとyデータをプロットする場合、コマンドはplot data using 1:2、xデータが列1にあり、yデータが列 plot using 22にある場合、列2のデータをy軸にプロットし、各データポイントのx座標は1ずつ増加します。

緑と赤のバーが同じサイズであることに気付くでしょう。どちらも列2を使用しています。最初の(赤の)バーを表示したくない場合は、plotコマンドを次のように変更できます。

plot 'test.dat' using 2:xtic(1) title 'Col1', '' using 3 title 'Col2', '' using 4 title 'Col3'

このコマンドを使用すると、xticラベルは同じままになり、最初のバーは表示されなくなります。最初にプロットされるものは赤、2番目は緑、3番目は青になるため、このコマンドでデータの色が変わることに注意してください。

于 2012-05-30T16:22:20.003 に答える