2017-10-13 17 views
0

私はGnuplotを使ってCでプロットしようとしていますが、これまでのところ半分は別のthreadに続いていますが、gnuplotでタイトルとラベルをCを使って設定する

次のようにプロットするための私のコードは行く:

char * commandsForGnuplot[] = {"set title \"Probability evolution\"", "plot 'data.temp' with linespoints", "set xlabel \"beta probability\"", "set ylabel \"Fraction of sick individuals\""}; 
    FILE * temp = fopen("data.temp", "w"); 
    FILE * gnuplotPipe = popen ("gnuplot -persistent", "w"); 
    for (i=0; i < NB; i++){ 
    fprintf(temp, "%lf \n", B[i]); 
    } 
    for (i=0; i < 4; i++){ 
    fprintf(gnuplotPipe, "%s \n", commandsForGnuplot[i]); 
    } 

すべてが正しくは、xlabelとylabelのを除いて示したされているので、この部分が間違っている必要があります。

"set xlabel \"beta probability\"", "set ylabel \"Fraction of sick individuals\"" 

は誰が設定する方法を知ってい

それは適切ですか?

また、これらのラベルとタイトルのサイズを設定するにはどうすればよいですか。

ありがとうございます!

答えて

0

plot部分は実際にプロットを作成する部分です。後で設定するものはすべて無視されます。

char * commandsForGnuplot[] = { 
    "set title \"Probability evolution\"", 
    "set xlabel \"beta probability\"", 
    "set ylabel \"Fraction of sick individuals\"", 
    "plot 'data.temp' with linespoints" 
}; 
-1

ありがとうございました!

char * commandsForGnuplot[] = { 
     "set title \"Probability evolution\"font \"Helvetica, 20\"", 
     "set xrange \"[100:1000]\"",   
     "set xlabel \"Time steps\"font \"Helvetica, 15\"", 
     "set ylabel \"Fraction of sick individuals\"font \"Helvetica, 15\"", 
     "plot 'data.temp' with linespoints" 

gnuplotはxrangeのがある方法を取得していないようです。だから私は、軸の範囲を変更したいが、今再び、コードで何か間違っがあるように思われるだろうとリードを次

タイプされた、どのようにそれを適応させるべきですか?

もう一度おねがいします!

+0

もちろん、set xrange [100:1000] "'を使用する必要があるので、そうではありません。 gnuplotの構文の基本を見てください! – Christoph

+0

Christophに感謝しますが、どちらの場合も動作しません。この場合、プログラムを実行した後にプロットは表示されません。 – Arduino

+0

データがその範囲にない場合、その構文は正しい – Christoph

関連する問題