72 virtual void elements(
int& _nx,
int& _ny ) = 0;
141 const char *driver = NULL,
const char *file = NULL );
143 const char *driver = NULL,
const char *file = NULL );
153 void adv(
PLINT page );
164 void svect(
const PLFLT *arrow_x = NULL,
const PLFLT *arrow_y = NULL,
PLINT npts = 0,
bool fill =
false );
182 void box(
const char *xopt,
PLFLT xtick,
PLINT nxsub,
187 void box3(
const char *xopt,
const char *xlabel,
PLFLT xtick,
PLINT nsubx,
188 const char *yopt,
const char *ylabel,
PLFLT ytick,
PLINT nsuby,
189 const char *zopt,
const char *zlabel,
PLFLT ztick,
PLINT nsubz );
206 void col0(
PLINT icol0 );
215 void col1(
PLFLT c );
317 void font(
PLINT ifont );
321 void fontld(
PLINT fnt );
345 void gcompression(
PLINT& compression );
353 void gdiori(
PLFLT& rot );
369 void gfnam(
char *fnam );
377 void glevel(
PLINT &p_level );
410 void gver(
char *p_ver );
447 void lab(
const char *xlabel,
const char *ylabel,
const char *tlabel );
450 void legend(
PLFLT *p_legend_width,
PLFLT *p_legend_height,
456 PLFLT text_justification,
457 const PLINT *text_colors,
const char *
const *
text,
458 const PLINT *box_colors,
const PLINT *box_patterns,
459 const PLFLT *box_scales,
const PLFLT *box_line_widths,
460 const PLINT *line_colors,
const PLINT *line_styles,
461 const PLFLT *line_widths,
462 const PLINT *symbol_colors,
const PLFLT *symbol_scales,
463 const PLINT *symbol_numbers,
const char *
const *symbols );
465 void colorbar(
PLFLT *p_colorbar_width,
PLFLT *p_colorbar_height,
471 PLINT n_labels,
PLINT *label_opts,
const char *
const *label,
472 PLINT n_axes,
const char *
const *axis_opts,
474 PLINT *n_values,
const PLFLT *
const *values );
490 void lsty(
PLINT lin );
501 const PLINT *plotentries,
PLINT nplotentries );
506 const char *
name,
const char *
string,
508 const PLINT *plotentries,
PLINT nplotentries );
610 void poly3(
PLINT n,
const PLFLT *x,
const PLFLT *y,
const PLFLT *z,
const bool *draw,
bool ifcc );
618 void psty(
PLINT patt );
644 void scmap0n(
PLINT ncol0 );
648 void scmap1n(
PLINT ncol1 );
652 void scmap1_range(
PLFLT min_color,
PLFLT max_color );
656 void gcmap1_range(
PLFLT &min_color,
PLFLT &max_color );
677 void scmap1l(
bool itype,
PLINT npts,
const PLFLT *intensity,
678 const PLFLT *coord1,
const PLFLT *coord2,
const PLFLT *coord3,
const bool *alt_hue_path = NULL );
687 void scmap1la(
bool itype,
PLINT npts,
const PLFLT *intensity,
689 const bool *alt_hue_path = NULL );
713 void scompression(
PLINT compression );
717 void sdev(
const char *devname );
721 void gdev(
char *devname );
736 void sdiori(
PLFLT rot );
748 void sesc(
char esc );
757 void setcontlabelformat(
PLINT lexp,
PLINT sigdig );
769 void sfnam(
const char *fnam );
773 void sdevdata(
void *data );
856 void smem(
PLINT maxx,
PLINT maxy,
void *plotmem );
860 void smema(
PLINT maxx,
PLINT maxy,
void *plotmem );
868 void sori(
PLINT ori );
877 void spause(
bool pause );
881 void spal0(
const char *filename );
885 void spal1(
const char *filename,
bool interpolate =
true );
889 void sstrm(
PLINT strm );
905 void start(
const char *devname,
PLINT nx,
PLINT ny );
917 void string(
PLINT n,
const PLFLT *x,
const PLFLT *y,
const char *
string );
929 void stripc(
PLINT *
id,
const char *xspec,
const char *yspec,
932 bool y_ascl,
bool acc,
934 const PLINT colline[],
const PLINT styline[],
const char *legline[],
935 const char *labx,
const char *laby,
const char *labtop );
943 void stripd(
PLINT id );
973 void sxwin(
PLINT window_id );
993 void timefmt(
const char *fmt );
998 void vasp(
PLFLT aspect );
1022 void width(
PLFLT width );
1029 void xormod(
bool mode,
bool *status );
1034 void seed(
unsigned int s );
1036 PLFLT randd(
void );
1043 void gFileDevs(
const char ***p_menustr,
const char ***p_devname,
1048 void sKeyEH(
void ( *KeyEH )(
PLGraphicsIn *,
void *,
int * ),
1053 void sbopH(
void ( *handler )(
void *,
int * ),
void *handlier_data );
1057 void seopH(
void ( *handler )(
void *,
int * ),
void *handlier_data );
1065 void sexit(
int ( *handler )(
const char * ) );
1135 void SetUsage(
char *program_string,
char *usage_string );
1139 PLINT setopt(
const char *opt,
const char *optarg );
1143 int SetOpt(
const char *opt,
const char *optarg );
1153 void gfile( FILE **p_file );
1157 void sfile( FILE *file );
1161 void gesc(
char *p_esc );
1178 void GetName(
char *dir,
char *subdir,
char *filename,
char **filespec );
1268 void stripc(
PLINT *
id,
const char *xspec,
const char *yspec,
1273 const PLINT colline[],
const PLINT styline[],
const char *legline[],
1274 const char *labx,
const char *laby,
const char *labtop );
static void gradient(PLStream *pls, short *xa, short *ya, PLINT npts)
static void arc(PLStream *, arc_struct *)
virtual void elements(int &nx, int &ny) const
virtual ~Contourable_Data()
Contourable_Data(int nx, int ny)
virtual PLFLT operator()(int i, int j) const =0
virtual void min_max(PLFLT &_min, PLFLT &_max)=0
virtual PLFLT operator()(int ix, int iy) const =0
virtual void elements(int &_nx, int &_ny)=0
cxx_pltr2(Coord_2d &cx, Coord_2d &cy)
plstream & operator=(const plstream &)
void cmd(PLINT op, void *ptr)
PLINT setopt(const char *opt, const char *optarg)
void fill(PLINT n, const PLFLT *x, const PLFLT *y)
int SetOpt(const char *opt, const char *optarg)
PLINT GetCursor(PLGraphicsIn *plg)
char * FindCommand(char *fn)
virtual void set_stream(void)
void seopH(void(*handler)(void *, int *), void *handlier_data)
void fshade(PLFLT(*f2eval)(PLINT, PLINT, PLPointer), PLPointer f2eval_data, PLFLT(*c2eval)(PLINT, PLINT, PLPointer), PLPointer c2eval_data, PLINT nx, PLINT ny, PLFLT left, PLFLT right, PLFLT bottom, PLFLT top, PLFLT shade_min, PLFLT shade_max, PLINT sh_cmap, PLFLT sh_color, PLFLT sh_width, PLINT min_color, PLFLT min_width, PLINT max_color, PLFLT max_width, PLFILL_callback fill, bool rectangular, PLTRANSFORM_callback pltr, PLPointer pltr_data)
static PLINT active_streams
void Static2dGrid(PLFLT_NC_MATRIX zIliffe, PLFLT_VECTOR zStatic, PLINT nx, PLINT ny)
void Free2dGrid(PLFLT **f, PLINT nx, PLINT ny)
void scmap1l(bool itype, PLINT npts, const PLFLT *intensity, const PLFLT *coord1, const PLFLT *coord2, const PLFLT *coord3, const bool *alt_hue_path=NULL)
void GetName(char *dir, char *subdir, char *filename, char **filespec)
plstream(const plstream &)
void sexit(int(*handler)(const char *))
void Alloc2dGrid(PLFLT_NC_MATRIX *f, PLINT nx, PLINT ny)
void sError(PLINT *errcode, char *errmsg)
PLINT MergeOpts(PLOptionTable *options, const char *name, const char **notes)
void rgbhls(PLFLT r, PLFLT g, PLFLT b, PLFLT *p_h, PLFLT *p_l, PLFLT *p_s)
void cpstrm(plstream &pls, bool flags)
void xormod(bool mode, bool *status)
void hlsrgb(PLFLT h, PLFLT l, PLFLT s, PLFLT *p_r, PLFLT *p_g, PLFLT *p_b)
void gfile(FILE **p_file)
void svect(const PLFLT *arrow_x=NULL, const PLFLT *arrow_y=NULL, PLINT npts=0, bool fill=false)
void MinMax2dGrid(PLFLT_MATRIX f, PLINT nx, PLINT ny, PLFLT *fmax, PLFLT *fmin)
void poly3(PLINT n, const PLFLT *x, const PLFLT *y, const PLFLT *z, const bool *draw, bool ifcc)
void sbopH(void(*handler)(void *, int *), void *handlier_data)
void shades(const PLFLT *const *a, PLINT nx, PLINT ny, PLDEFINED_callback defined, PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax, const PLFLT *clevel, PLINT nlevel, PLFLT fill_width, PLINT cont_color, PLFLT cont_width, PLFILL_callback fill, bool rectangular, PLTRANSFORM_callback pltr, PLPointer pltr_data)
PLFLT f2evalr(PLINT ix, PLINT iy, PLPointer plf2eval_data)
PLFLT f2eval2(PLINT ix, PLINT iy, PLPointer plf2eval_data)
PLFLT f2eval(PLINT ix, PLINT iy, PLPointer plf2eval_data)
void SetUsage(char *program_string, char *usage_string)
PLDLLIMPEXP_CXX void tr2(PLFLT x, PLFLT y, PLFLT *tx, PLFLT *ty, PLPointer pltr_data)
PLDLLIMPEXP_CXX void tr2p(PLFLT x, PLFLT y, PLFLT *tx, PLFLT *ty, PLPointer pltr_data)
PLDLLIMPEXP_CXX void fill(PLINT n, const PLFLT *x, const PLFLT *y)
PLDLLIMPEXP_CXX void tr0(PLFLT x, PLFLT y, PLFLT *tx, PLFLT *ty, PLPointer pltr_data)
PLDLLIMPEXP_CXX void tr1(PLFLT x, PLFLT y, PLFLT *tx, PLFLT *ty, PLPointer pltr_data)
void c_plsstrm(PLINT strm)
static PLStream * pls[PL_NSTREAMS]
void(* PLMAPFORM_callback)(PLINT n, PLFLT_NC_VECTOR x, PLFLT_NC_VECTOR y)
void(* PLTRANSFORM_callback)(PLFLT x, PLFLT y, PLFLT_NC_SCALAR xp, PLFLT_NC_SCALAR yp, PLPointer data)
PLINT(* PLDEFINED_callback)(PLFLT x, PLFLT y)
const PLFLT * PLFLT_VECTOR
const PLFLT *const * PLFLT_MATRIX
void(* PLFILL_callback)(PLINT n, PLFLT_VECTOR x, PLFLT_VECTOR y)
void(* PLLABEL_FUNC_callback)(PLINT axis, PLFLT value, PLCHAR_NC_VECTOR label, PLINT length, PLPointer data)
static const char shade or gradient plots n n shade
plgriddata(x, y, z, xg, yg, type, data)\n\ \n\ \n\ This function is used in example 21.\n\ \n\ \n\ \n\ SYNOPSIS:\n\ \n\ plgriddata(x, y, z, npts, xg, nptsx, yg, nptsy, zg, type, data)\n\ \n\ ARGUMENTS:\n\ \n\ x(PLFLT_VECTOR, input) : The input x vector.\n\ \n\ y(PLFLT_VECTOR, input) : The input y vector.\n\ \n\ z(PLFLT_VECTOR, input) : The input z vector. Each triple x[i],\n\ y[i], z[i] represents one data sample coordinate.\n\ \n\ npts(PLINT, input) : The number of data samples in the x, y and z\n\ vectors.\n\ \n\ xg(PLFLT_VECTOR, input) : A vector that specifies the grid spacing\n\ in the x direction. Usually xg has nptsx equally spaced values\n\ from the minimum to the maximum values of the x input vector.\n\ \n\ nptsx(PLINT, input) : The number of points in the xg vector.\n\ \n\ yg(PLFLT_VECTOR, input) : A vector that specifies the grid spacing\n\ in the y direction. Similar to the xg parameter.\n\ \n\ nptsy(PLINT, input) : The number of points in the yg vector.\n\ \n\ zg(PLFLT_NC_MATRIX, output) : The matrix of interpolated results\n\ where data lies in the grid specified by xg and yg. Therefore the\n\ zg matrix must be dimensioned\n\ nptsx by\n\ nptsy.\n\ \n\ type(PLINT, input) : The type of grid interpolation algorithm to\n\ use, which can be:GRID_CSA:Bivariate Cubic Spline approximation\n\ GRID_DTLI:Delaunay Triangulation Linear Interpolation\n\ GRID_NNI:Natural Neighbors Interpolation\n\ GRID_NNIDW:Nearest Neighbors Inverse Distance Weighted\n\ GRID_NNLI:Nearest Neighbors Linear Interpolation\n\ GRID_NNAIDW: Nearest Neighbors Around Inverse Distance\n\ Weighted\n\ For details of the algorithms read the source file plgridd.c.\n\ \n\ data(PLFLT, input) : Some gridding algorithms require extra data,\n\ which can be specified through this argument. Currently, for\n\ algorithm:GRID_NNIDW, data specifies the number of neighbors to\n\ use, the lower the value, the noisier(more local) the\n\ approximation is.\n\ GRID_NNLI, data specifies what a thin triangle is, in the\n\ range[1. .. 2.]. High values enable the usage of very thin\n\ triangles for interpolation, possibly resulting in error in\n\ the approximation.\n\ GRID_NNI, only weights greater than data will be accepted. If\n\ 0, all weights will be accepted.\n\ " zg
static const char shade or gradient plots n n or n gradient plots(See pllegend for similar functionality for creating\n\ legends with discrete elements). The arguments of plcolorbar provide\n\ control over the location and size of the color bar as well as the\n\ location and characteristics of the elements(most of which are\n\ optional) within that color bar. The resulting color bar is clipped\n\ at the boundaries of the current subpage.(N.B. the adopted coordinate\n\ system used for some of the parameters is defined in the documentation\n\ of the position parameter.)\n\ \n\ Redacted form reads the desired grid location from the input vectors n xg[nptsx] and yg[nptsy]
void xform(PLFLT x, PLFLT y, PLFLT *tx, PLFLT *ty, PLPointer pltr_data)
void(* label_func)(PLINT, PLFLT, char *, PLINT, PLPointer)
static int scol0(Tcl_Interp *interp, register PlPlotter *plPlotterPtr, int i, CONST char *col, int *p_changed)
static struct line line[]
PLDLLIMPEXP_CXX PLFLT Contourable_Data_evaluator(PLINT i, PLINT j, PLPointer p)
PLDLLIMPEXP_CXX void Coord_Xform_evaluator(PLFLT, PLFLT, PLFLT *, PLFLT *, PLPointer)
void mapform(PLINT n, PLFLT *x, PLFLT *y)
static PLOptionTable options[]