2017-07-21 7 views
0

私は.gnuファイルを書き出すpythonスクリプトを持っています。これは.pngファイルをプロットしています。私は範囲を最大値と最小値の5%に設定することによって、よりダイナミックな方位を作るようにしています。pythonでgnuplotの範囲をオートスケールする方法

私は間違っていますか?

このコードはこのように実行されません。あなたが実際に何かをプロットするまで

#-- write out .gnu file 
    self.output = textwrap.dedent('''\ 
    set terminal png size 800,600 
    set output "{0}" 
    set grid 
    set xlabel "Cycle" 
    set title "{1}" 
    set xtics ({2}) 
    set yrange[GPVAL_Y_MIN:GPVAL_Y_MAX] 
    plot ''').format(self.figurename, self.title, ",".join(plot_data.keys()), self.styletype, self.datafile) 

    for n in range(0,max_num_lines): 
     tmp_str = " ".join(['"{2}"','using','1:'+str(n+2),'title',"'"+self.titles[n+1]+"'",'w linespoints {1}']).format(self.figurename, self.linecombos[n], self.datafile) 
     if n!=max(range(0,max_num_lines)): 
      tmp_str += ", " 
     self.output += tmp_str 

    pass 

答えて

0

内部変数GPVAL_Y_MIN/GPVAL_Y_MAXは初期化されません。

self.output = textwrap.dedent('''\ 
set terminal png size 800,600 
set output "{0}" 
set grid 
set xlabel "Cycle" 
set title "{1}" 
set xtics ({2}) 

#analyze the file and adjust y-range 
stats "{3}" nooutput 
set yrange[STATS_min_y:STATS_max_y] 

plot ''').format(self.figurename, self.title, ",".join(plot_data.keys()), self.styletype, self.datafile) 
:これを回避するには、ファイルを解析して、 STATS_min_y/ STATS_max_y変数を経由して目的の最小/最大値を提供する statsコマンドを使用する場合があります
関連する問題