4

gnuplot で水平ヒストグラムをプロットしようとしています。

これは私の現在の垂直(通常の種類)ヒストグラムです:

width=0.5
hist(x,width)=width*floor(x/width)+width/2.0 
set boxwidth width*0.9
set style fill solid 0.5
plot "a" u (hist($2,width)):(1.0) smooth freq w boxes lc 3 notitle

ここで必要なのは、まったく同じ結果ですが、時計回りに 90 度回転したものです。

以下でこれを試しましたが、結果は実際には期待したものではありません。

width=0.5
hist(x,width)=width*floor(x/width)+width/2.0 
set boxwidth width*0.9
set style fill solid 0.5
plot "a" u (1.0):(hist($2,width)) smooth freq w boxes lc 3 notitle
4

4 に答える 4

1

gnuplot にはまだ水平プロットに対する一般的なサポートはありませんが、boxxyerrorbarsスタイルを使用してかなり適切な水平棒グラフを作成できます。6 列の入力 (x、y、xlow、xhigh、ylow、yhigh) があります。事前にバーの値を自分で計算する必要があります。

私はちょうどこのようなことをしました ($2 は「センター」を指します):

'median':'center':'min':'max':($2-0.4):($2+0.4) と boxxyerrorbars を使用して 'datafile.csv' をプロットします。

y 軸に沿ってカテゴリ テキスト ラベルが必要な場合は、次のようにします (データ ファイルの最初の列から取得します)。

'median':'center':'min':'max':($2-0.4):($2+0.4):ytic(1) と boxxyerrorbars を使用して 'datafile.csv' をプロットします。

于 2013-02-16T21:07:43.013 に答える