2016-05-29 1 views
1

私は単一の図を描きたい複数のデータファイルを持っています。各ファイルには、trueとfalseの2つの変数を持つ列が含まれています。私はこれらの値のそれぞれについてboxplotを描画して比較できるようにしたいと思います。データファイルのサンプルは以下のとおりである:GNUPLOT:boxplots可変線スタイル/色

0.6,true 
0.7,true 
0.5,false 
0.4,true 
.. 

私は次のコードを思い付く:

plot inputFile1 using (1):($4):(0.3):3 title 'A' , \ 
inputFile2 using (3):($4):(0.3):3 title 'B' 

これは、次の図に生成:enter image description here

しかし、私はそのようなことをカスタマイズしたいと思いますが"true"変数を持つすべてのボックスプロットは、特定のラインスタイル/色を持ち、 "false"変数を持つボックスプロットは、別の特定のラインスタイル/色を持ちます。 さらに、タイトルに真と偽の形を表示したいと思いますが、x-xisでは、真と偽のペアごとにファイルAとファイルBが必要です。

この点に関するお手伝いをいただければ幸いです。

ありがとうございます。

答えて

1

現在のデータファイルでは、2番目の列にtrueまたはfalseが含まれているかどうかを検出し、それに従って処理する必要があります。しかし、私はgnuplotがデータファイルから文字列を処理できるかどうかわかりません。 $0で、ここで

plot [0:6] "+" using 0:($0/2.):(0.3):0:xtic((int($0)%2)==0?"true":"false") w errorb lc variable 

using、リスト内の4番目の数は色を定義します。

あなたのファイルを処理し、1または0でtrueまたはfalseを交換する場合は、以下の行を適応させることができます色はファイルの各行ごとに変更されますが、色番号がファイルの1つの列にある場合は、その列を使用します。ファイルの "+"とusingの最初の2つの数字を、プロットスタイルに必要なパラメータで置き換えます。 xticコマンドはファイル内のいくつかの列(ここでは行番号$0)を処理し、値に応じてxティックにラベルを付けます(help ternaryを参照)。

MWEはそのまま動作しないので、より正確な回答が必要な場合は、修正してください。

+0

あなたの答えをありがとう。 0 :($ 0/2。):(0.3):0:xtic "を使用して、特にこの[0:6]" + "を説明してください。 – mas

+0

完了したら、詳細な回答が必要な場合は、動作中のMWEを忘れずに入力してください。 – Joce

関連する問題