MathGroup Archive 2006

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Piping commands to gnuplot through the shell

  • To: mathgroup at smc.vnet.net
  • Subject: [mg67514] Re: Piping commands to gnuplot through the shell
  • From: "James Gilmore" <james.gilmore at yale.edu>
  • Date: Thu, 29 Jun 2006 00:09:33 -0400 (EDT)
  • Organization: Yale University
  • References: <e7nntq$965$1@smc.vnet.net>
  • Sender: owner-wri-mathgroup at wolfram.com

Hi,

I dont have any answer to your question. Just wondering why you would need 
to pipe to gnuplot in the first place?
Mathematica has a nice built in graphics system, that could be tailored to 
suit your needs.
Are you producing a graphics style that Mathematica cannot construct?
If so could you send me a copy so I could take a look?

Cheers
James

"MDP" <news.x.zokota at spameater.org> wrote in message 
news:e7nntq$965$1 at smc.vnet.net...
> Hello,
>
> I am currently writing some Mathematica code that will plot data with
> gnuplot instead of the internal plotting functions.  I have successfully
> written a function that opens the gnuplot pipes executable as a stream 
> where
> I can send it a list of arbitrary commands and end up with my desired
> output.  This is great for making presentation quality plots but the 
> problem
> is that after the function ends and gnuplot is exited there is still a
> process running as indicated by Windows Task Manager.  The window that 
> gets
> opened during command piping gets closed but the executable does not and I
> can't figure out what I'm doing wrong.  If I run the function multiple 
> times
> I end up with multiple processes running so each time I use
> pstream=OpenWrite["!pgnuplot"] Mathematica starts a new process that
> Close[pstream] doesn't seem to stop.  Does anyone have an idea how to 
> close
> it or any ideas on how I could run gnuplot through Mathematica a better 
> way?
>  Thanks for any insight... here is my code:
>
> gnuplot2D[data_, opts___] := Module[
>       {
>         gnuplotDirectory = "c:/program
>       files/gnuplot/bin/", tempDirectory = "c:/program files/gnuplot/"=,
>         aspectRatio = gnuplotAspectRatio /. {opts} /. \
> Options[gnuplotScatter],
>         commands, j, thePlot
>         },
>
>       commands = {"reset",
>
>           "set datafile separator \",\"",
>           "set size ratio " <> ToString[N[aspectRatio, 3 ]],
>           "set terminal postscript eps enhanced color \"ArialMT\" 24",
>           "set output \"" <> tempDirectory <> "temp.eps" <> "\"",
>           "plot  \"" <> tempDirectory <> "temp.csv" <> "\" matrix 
> notitle",
>           "quit"};
>
>       SetDirectory[tempDirectory];
>       Export["temp.csv", data];
>       SetDirectory[gnuplotDirectory];
>       pstream = OpenWrite["!pgnuplot"];
>       For[j = 1, j =E2=89=A4 Length[commands], j++, OutputForm[
>           commands[[j]]] >> !pgnuplot;];
>       Close[pstream];
>       SetDirectory[tempDirectory];
>       Run["del temp.csv"];
>       ];
>
> Options[gnuplotScatter] = {gnuplotAspectRatio -> 1/GoldenRatio};
> 



  • Prev by Date: Packages--Problem in evaluating functions from my own package!!!
  • Next by Date: Re: Change Symbol in ListPlot
  • Previous by thread: RE: Packages--Problem in evaluating functions from my own package!!!
  • Next by thread: Mouse wheel scroll speed