2016-05-13 163 views
0

我正試圖在C++上實現Gnuplot來創建熱圖。一旦我運行下面的代碼,它會打開一個新的gnu繪圖窗口,並在上面繪製圖形。我不能只是將圖形寫入圖像文件而不是在新窗口中打開它?如何用C++ gnuplot生成圖像文件?

代碼:

Gnuplot gp; 
gp << "unset key\n"; 
gp << "set pm3d\n"; 
// gp << "set hidden3d\n"; 
gp << "set view map\n"; 
gp << "set xrange [ 0 : 10 ] \n"; 
gp << "set yrange [ 0 : 10 ] \n"; 
gp << "splot '-'\n"; 
gp.send2d(frame); 

enter image description here

+0

http://www.math.utk.edu/~vasili/refs/How-to/gnuplot.print.html – Drop

回答

1

只需添加輸出。下面的代碼應該爲你工作:

Gnuplot gp; 
gp << "unset key\n"; 
gp << "set pm3d\n"; 
// gp << "set hidden3d\n"; 
gp << "set view map\n"; 
gp << "set xrange [ 0 : 10 ] \n"; 
gp << "set yrange [ 0 : 10 ] \n"; 
gp << "set terminal png \n"; 
gp << "set output 'b.png' \n"; 
gp << "splot '-'\n"; 
gp.send2d(frame); 
0

以下行添加到您的腳本:

gp << "set terminal png\n"; 
gp << "set output 'my_file.png'\n"; 

還有其他可用的格式,你可以看到this page,以獲得更多信息。