2015-03-06 25 views
7

Veriyi (x ve y koordinatları) bir dosyaya yazdığım kod aşağıdadır.C++ programından gnuplot kullanarak bir grafiğin nasıl çizileceği

void display(){ 

    fstream out; 
    outfile.open("Co_ordinates.txt",fstream::out | fstream::trunc); 
    outfile.precision(6); 
    for(int i=0;i<3000; i++){ 
     outfile<<fixed<<x[i]<<" "<<fixed<<y[i]<<endl; 
    } 
    out.close(); 

} 

I, x grafik çizmek isteyen ve y https://code.google.com/p/gnuplot-cpp/source/browse/trunk/gnuplot_i.hpp yukarıda dosyası "Co_ordinates.txt" Eklediğim gnuplot programı "gnuplot_i.hpp" koordinatları. ifadesi:

ben grafiğini

const string s="Co_ordinates.txt"; 
Gnuplot& plotfile_xy(&s,1,2,'Grid'); 

Ama şu hataları

alma

hata çizmek için aşağıdaki kodu eklemiş

/// plot x,y pairs: x y 
    /// from file 
    Gnuplot& plotfile_xy(const std::string &filename, 
         const unsigned int column_x = 1, 
         const unsigned int column_y = 2, 
         const std::string &title = ""); 

gnuplot_i.hpp tanımlanan şu fonksiyonunu kullandık liste başlatıcıda bileşik ifade olarak ele alındı ​​[-fpermissive] | hata: ‘Gnuplot &" türünde const olmayan başvurunun geçersiz bir şekilde başlatılması intran ‘int’ türünde |

Yukarıdaki kodu birçok formda denedim .. ama hatalar alıyorum. şekilde pek bir şey yok

Gnuplot gp("lines"); 
//using the parameters from your code 
gp.plotfile_xy(&s,1,2,'Grid'); 

: böylece örneğin Gnuplot bir örneğini ihtiyaç adlandırmak,

+0

kullanılarak yapılabilir yapmış şeyi bence Yazdığınız yolu 'Gnuplot & plotfile_xy (& s, 1,2, 'Grid'); 'derleyici, birini çağırmak yerine bir işlevi açıkladığınızı düşünür. –

cevap

8

kolayca aşağıdaki kodu

system("gnuplot -p -e \"plot 'Co_ordinates.txt'\"");

İlgili konular