Retroceder   Foros del Web > Temas generales de computación > Programación > C/C++
Crea un nuevo usuario o inicia sesión utilizando tu cuenta de Facebook
Connect with Facebook

Respuesta
 
Herramientas Desplegado
Antiguo 17-sep-2006, 17:19   #1 (permalink)
Warlord_Furia ha deshabilitado el karma
 
Avatar de Warlord_Furia
 
Fecha de Ingreso: mayo-2005
Mensajes: 30
Warlord_Furia está desconectado
GNUPLot con C++

Hola a todos:

Tal vez muchos sepan de la existencia del GNUPlot (programa para hacer graficos 2d y 3d). Yo recien lo descubro por medio de un amigo.

Al Grano!!!!!
Se que puedo combinar las funciones de este programa (GNUPlot) desde muchos editores de codigo fuente en mi caso "Borland c++ 5.02".
La pregunta es ¿Como? ¿Como puedo desde la linea de codigo de c++ llamar a las funciones del (GNUPLot)? , si alguien tiene la respuesta por fabor posteela.

Nota
Trabajo con "Borland c++ 5.02" , Tengo el "GNUPlot 4.0". ¿Que Sigue :P?
He visto muchos Programas Graficadores hechos en C++ que hicieron uso de las Funciones del GNUPLot pero lamentablemente no pude acceder al codigo es por ello que recurro a este foro en busca de ayuda.

Desde ya!!! Agradesco todos los Aportes.
  Responder Citando
Antiguo 17-sep-2006, 23:24   #2 (permalink)
Nivel7 no tiene puntos (o el karma desactivado)
 
Fecha de Ingreso: abril-2006
Ubicación: Acapulco Gro. México
Mensajes: 483
Nivel7 está desconectado
No conosco tal programa, pero suena mas como una libreria.

las forma en que puedes usarla seria a traves de una libreria estatica o una DLL.


ademas es necesario tener los ficheros de cabecera de este programa o libreria.

verifica que es lo que trae con sigo este programa.

Saludos.
  Responder Citando
Antiguo 18-sep-2006, 10:53   #3 (permalink)
Warlord_Furia ha deshabilitado el karma
 
Avatar de Warlord_Furia
 
Fecha de Ingreso: mayo-2005
Mensajes: 30
Warlord_Furia está desconectado
Cita:
Iniciado por Nivel7 Ver Mensaje
No conosco tal programa, pero suena mas como una libreria.
las forma en que puedes usarla seria a traves de una libreria estatica o una DLL.
ademas es necesario tener los ficheros de cabecera de este programa o libreria.
verifica que es lo que trae con sigo este programa.
Saludos.
Pues este aporte no me ayudo en nada.
He buscado información en la red y hay muchos que como yo Buscan la Manera de Invocar el GNUPlot con el C++.

Lo unico que pude encontrar fue un comentario en el cual se explica la manera de invocar este programa desde la linea de codigo de c++, pero a decir verdad no entendi absolutamente nada. ya que, se trataba de un caso particular.

Aqui el Comentario (Ingles).

este es el caso del cual no entendi nada solo se que son indicaciones para que el programa termine cuando el gnuplot termine el dibujo.

-------------------------------------------------------------------------
Joseph Suprenant wrote:
> Hello all,
> I have a C++ program, it does some calculations on things and then
> prints out a file in the format in which GNUPLOT can use. So my question is
> how would i call GNUPLOT from my C++ program. I know in some operating
> systems you can do system("gnuplot");

system is useless since then you can't pass any commands to GNUplot

> But not with red hat 7.3. So could
> some kind soul help me out? After it starts up GNUPLOT my program will
> terminate.


I've done this on Linux using the popen() function (which is not
standard C++, but POSIX-standard)

class GNUplot {
public:
GNUplot() throw(string);
~GNUplot();
void operator ()(const string& command);
// send any command to gnuplot
protected:
FILE *gnuplotpipe;
};

GNUplot::GNUplot() throw(string) {
gnuplotpipe=popen("gnuplot","w");
if (!gnuplotpipe) {
throw("Gnuplot not found !");
}
}

GNUplot::~GNUplot() {
fprintf(gnuplotpipe,"exit\n");
pclose(gnuplotpipe);
}

void GNUplot:perator() (const string& command) {
fprintf(gnuplotpipe,"%s\n",command.c_str());
fflush(gnuplotpipe);
// flush is necessary, nothing gets plotted else
};


You simply construct one object and invoke it with operator () like

GNUplot plotter;
plotter("plot sin(x)");

Note that GNUplot will be killed as soon as your program terminates. So
you need to wait for keystroke or similar, otherwise you will only see
short flashing of the graph. If you need that the graph window stays on
screen after your pragram fnished, then instead of "gnuplot" in the
constructor invoke "gnuplot -persist".

-------------------------------------------------------------------------
Si alguien tiene información acerca de lo que busco.

¿¿Como invocar al GNUPLot desde la Linea de Codigo de C++ y como hacer uso de este??

Agradesco desde ya!!
  Responder Citando
Antiguo 18-sep-2006, 13:46   #4 (permalink)
MaxExtreme ha deshabilitado el karma
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
MaxExtreme está desconectado
Pues yo lo veo bien claro, y el comentario en inglés lo explica perfectamente.

Usa popen() y demás para abrir una tubería que te comunique con la entrada estándar de GNU Plot.

Y si necesitas más ayuda que la que te da el comentario (que te viene hasta el código hecho), busca en Google que he encontrado más 3 referencias de cómo hacerlo en la primera página...
  Responder Citando
Antiguo 18-sep-2006, 18:11   #5 (permalink)
Warlord_Furia ha deshabilitado el karma
 
Avatar de Warlord_Furia
 
Fecha de Ingreso: mayo-2005
Mensajes: 30
Warlord_Furia está desconectado
Cita:
Iniciado por MaxExtreme Ver Mensaje
Pues yo lo veo bien claro, y el comentario en inglés lo explica perfectamente.
Usa popen() y demás para abrir una tubería que te comunique con la entrada estándar de GNU Plot.
Y si necesitas más ayuda que la que te da el comentario (que te viene hasta el código hecho), busca en Google que he encontrado más 3 referencias de cómo hacerlo en la primera página...
Claro .. se que me dice como hacerlo pero desde LINUX

Yo quisiera Saber como invocarlo desde Windows.

Si tienes los Links por fabor hazmelos llegar.
  Responder Citando
Antiguo 21-sep-2006, 16:44   #6 (permalink)
MaxExtreme ha deshabilitado el karma
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
MaxExtreme está desconectado
Cita:
Iniciado por Warlord_Furia Ver Mensaje
Claro .. se que me dice como hacerlo pero desde LINUX

Yo quisiera Saber como invocarlo desde Windows.

Si tienes los Links por fabor hazmelos llegar.
Dice como hacerlo, punto. Infórmate de la función popen(), y sabrás que es y para qué sirve.

Puedes usarlo desde Windows usando algun port de esa función, o en otro caso, buscando la equivalencia en la API de Windows (que existe).

Los Links, están en la primera página de Google, y no, no pienso copiártelos.
  Responder Citando
Respuesta
Calificación: Calificación de Tema: 1 votos, 2,00 de promedio.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.

Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code está Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado
Trackbacks está Desactivado
Pingbacks está Desactivado
Refbacks está Desactivado



La zona horaria es GMT -6. Ahora son las 19:59.
Políticas de Uso de Foros del Web


Message Board Statistics

SEO by vBSEO 3.3.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100