Pregunta

Estoy tratando de crear un gráfico y guardarlo como una imagen. Estoy obligado a usar raíz. Creé el gráfico con

TGraph graph = TGraph(xvect, yvect);

Pero ahora estoy atrapado en cómo guardarlo como PNG (u otro formato de imagen). Estoy usando una máquina Linux si eso marca la diferencia. Además, si alguien conoce el enlace a la documentación que describe el método para escribir el gráfico en un archivo de imagen, podría resolverlo a partir de ahí, pero no he tenido éxito en encontrar eso en la documentación hasta ahora.

¿Fue útil?

Solución

TCanvas*c1 = new TCanvas();
graph->Draw();
c1->Print("name.png");

Ciertamente funcionará en la cintina. Es posible que necesite un ajuste fino para trabajar en el código compilado.

Encontrarás todas estas cosas básicas cubiertas exhaustivamente en la línea. tutoriales y Howtos. Ver también la documentación en general.

Otros consejos

TCanvas*cvs = new TCanvas();
graph->Draw();
cvs->SaveAs("name.png");

Saveas ha sido mi función para guardar gráficos en la raíz. Como nota al margen, la documentación en línea es muy útil como dijo DMCkee.Lista de clase

La macro completa será:

TCanvas *c1 = new TCanvas();
const Int_t n = 10;
Double_t xvect[n];
Double_t yvect[n];
.... initialize xvect and y vect
TGraph graph = TGraph(n, xvect, yvect);
graph->Draw("al"); // draw the graph as a line (see the ROOT wen site for more option)
c1->SaveAs("c1.png"); // many other formats are available (PS, PDF, JPEG etc...)
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top