| golib
    0.5
    | 
These are the functions and classes related to plotting with gnuplot. You will generally want to use only. More...
| Classes | |
| class | goSinglePlot | 
| Single plot class used for goMultiPlotter.  More... | |
| class | goMultiPlotter | 
| Plotting multiple plots in one window (or on one page).  More... | |
| class | goPlot::Gnuplot | 
| Convenience interface to goMultiPlotter and goSinglePlot.  More... | |
| Enumerations | |
| enum | PlotType { Normal, Surface } | 
| Functions | |
| template<class T > | |
| void | goPlot::plot (const goMath::Vector< T > &x, const goMath::Vector< T > &y, const char *title=0, const char *plotOptions=0, const char *prefix=0) | 
| Convenience function for quickly plotting something.  More... | |
| template<class T > | |
| void | goPlot::plot (const goMath::Vector< T > &y, const char *title=0, const char *plotOptions=0, const char *prefix=0) | 
| template<class T > | |
| void | goPlot::plot (const goMath::Matrix< T > &points, const char *title=0, const char *plotOptions=0, const char *prefix=0) | 
| Convenience function for quickly plotting something.  More... | |
| template<class T > | |
| void | goPlot::plot3D (const goMath::Matrix< T > &M, const char *title, const char *plotOptions=0, const char *prefix=0, bool separateRows=false) | 
| template<class arrayT > | |
| bool | goPlot::gnuplot (const arrayT &array, const char *title=0, const char *gnuplotCommands=0, const char *prefixCommands=0, const char *shellPostfix=0, goString *cmdFileNameRet=0, goString *dataFileNameRet=0, bool waitfor=false) | 
| Plots 1D data using gnuplot.  More... | |
| template<class arrayT , class arrayT2 > | |
| bool | goPlot::gnuplot (const arrayT &array, const arrayT2 &array2, const char *title=0, const char *gnuplotCommands=0, const char *prefixCommands=0, const char *shellPostfix=0, goString *cmdFileNameRet=0, goString *dataFileNameRet=0, bool waitfor=false) | 
| template<class arrayT > | |
| bool | goPlot::gnuplotList (const goList< arrayT > *arrayListX, const goList< arrayT > *arrayListY=0, goList< goString > *title=0, goList< goString > *plotCommands=0, const char *prefixCommands=0, const char *postfixCommands=0, const char *shellPostfix=0, goString *cmdFileNameRet=0, goList< goString > *dataFileNameRet=0, bool waitfor=true) | 
| bool | goPlot::callGnuplot (const goString &gnuplotCommands, const char *shellPostfix, bool waitfor, goString *cmdFilenameRet, int redirectInputFD=-1, int redirectOutputFD=-1) | 
| bool | goPlot::addGnuplotCommands (goString &gnuplotCommands, const goList< goString > *dataFileNames, const goList< goString > *titles, const goList< goString > *plotCommands, const char *prefixCommands, const char *postfixCommands, goPlot::PlotType plotType=goPlot::Normal) | 
| template<class arrayT > | |
| bool | goPlot::writeGnuplotDataFiles (const goList< arrayT > *arrayListX, const goList< arrayT > *arrayListY, goList< goString > &dataFileNameRet) | 
| template<class arrayT > | |
| bool | goPlot::writeGnuplotDataFiles (const goList< arrayT > *arrayListX, const goList< arrayT > *arrayListY, const goList< arrayT > *arrayListZ, goIndex_t lineLength, goList< goString > &dataFileNameRet) | 
| template<class T > | |
| bool | goPlot::writeGnuplotDataFiles (const goList< goMath::Matrix< T > > *matrix, goList< goString > &dataFileNameRet) | 
| template<class T > | |
| bool | goPlot::writeGnuplotDataFilesBinary (const goList< goMath::Matrix< T > > *matrix, goList< goString > &dataFileNameRet) | 
| bool | goPlot::writeGnuplotDataFiles (const goList< const goSignal3DBase< void > * > *images, goList< goString > &dataFileNameRet) | 
These are the functions and classes related to plotting with gnuplot. You will generally want to use only.
| bool goPlot::gnuplot | ( | const arrayT & | array, | 
| const char * | title = 0, | ||
| const char * | gnuplotCommands = 0, | ||
| const char * | prefixCommands = 0, | ||
| const char * | shellPostfix = 0, | ||
| goString * | cmdFileNameRet = 0, | ||
| goString * | dataFileNameRet = 0, | ||
| bool | waitfor = false | ||
| ) | 
Plots 1D data using gnuplot.
Before calling the plot command, <prefixCommands> are executed in gnuplot and then plot <filename> <gnuplotCommands>. If a shell postfix is given, gnuplot is called in a shell like gnuplot <shellPostfix>. You can e.g. use this to redirect output for postscript terminal type. The calling process can either wait for gnuplot to finish or call it the non-blocking way; this is selected with the waitFor parameter.
 This function is currently implemented for goArray and goFixedArray template classes with goFloat and goDouble template parameters.
| array | Array, currently goArray<> and goFixedArray<> of types goFloat and goDouble are supported. | 
| title | Title of the plot. | 
| gnuplotCommands | Commands that come with the plot command, like this: plot <filename> <gnuplotCommands>. You could for example put "with dots" or similar here. If left null, "with lines" is assumed. | 
| prefixCommands | Gnuplot commands that go before the plot command. You can for example put commands to select the terminal type here. | 
| shellPostfix | If this is not null, gnuplot is called in a shell (/bin/sh) and this string is put after the gnuplot command string. Use this e.g. for "> my_file.ps" if you use postscript terminal. | 
| cmdFileNameRet | If not null, the command file name used by gnuplot (a temporary file) is stored here after the call. | 
| dataFileNameRet | If not null, the data file name used by gnuplot (a temporary file) is stored here after the call. | 
| waitfor | If true, the calling process blocks until gnuplot has finished. If false, the calling process does not block. | 
| void goPlot::plot | ( | const goMath::Matrix< T > & | points, | 
| const char * | title = 0, | ||
| const char * | plotOptions = 0, | ||
| const char * | prefix = 0 | ||
| ) | 
Convenience function for quickly plotting something.
For quick one-line plotting commands. Creates a goMultiPlotter and goSinglePlot, adds the given curve with options and prefix commands, sets the pause flag in goMultiPlotter to true (so that each plot waits for a key press) and calls plot().
| points | N x 2 point configuration matrix of the curve. | 
| title | Title (of the curve). | 
| plotOptions | Options for gnuplot (like "with lines") | 
| prefix | Prefix commands for gnuplot (like "set ..." commands) | 
| void goPlot::plot | ( | const goMath::Vector< T > & | x, | 
| const goMath::Vector< T > & | y, | ||
| const char * | title = 0, | ||
| const char * | plotOptions = 0, | ||
| const char * | prefix = 0 | ||
| ) | 
Convenience function for quickly plotting something.
For quick one-line plotting commands. Creates a goMultiPlotter and goSinglePlot, adds the given curve with options and prefix commands, sets the pause flag in goMultiPlotter to true (so that each plot waits for a key press) and calls plot().
| x | X coordinates. | 
| y | Y coordinates. | 
| title | Title (of the curve). | 
| plotOptions | Options for gnuplot (like "with lines") | 
| prefix | Prefix commands for gnuplot (like "set ..." commands) |