You can subscribe to this list here.
2000 |
Jan
|
Feb
|
Mar
|
Apr
(3) |
May
(14) |
Jun
(1) |
Jul
(3) |
Aug
(1) |
Sep
|
Oct
(2) |
Nov
(16) |
Dec
(1) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2001 |
Jan
(13) |
Feb
(22) |
Mar
(7) |
Apr
(8) |
May
(8) |
Jun
(11) |
Jul
(2) |
Aug
|
Sep
(5) |
Oct
(31) |
Nov
(23) |
Dec
(3) |
2002 |
Jan
(1) |
Feb
(17) |
Mar
(10) |
Apr
(3) |
May
(1) |
Jun
(2) |
Jul
|
Aug
|
Sep
(11) |
Oct
(5) |
Nov
(21) |
Dec
(20) |
2003 |
Jan
(27) |
Feb
(13) |
Mar
(20) |
Apr
(11) |
May
(12) |
Jun
(7) |
Jul
(16) |
Aug
(21) |
Sep
(9) |
Oct
(28) |
Nov
(24) |
Dec
(30) |
2004 |
Jan
(31) |
Feb
(5) |
Mar
|
Apr
(8) |
May
(12) |
Jun
(7) |
Jul
(13) |
Aug
(12) |
Sep
(2) |
Oct
(14) |
Nov
(42) |
Dec
(14) |
2005 |
Jan
|
Feb
|
Mar
(20) |
Apr
(17) |
May
(9) |
Jun
|
Jul
(7) |
Aug
(3) |
Sep
(17) |
Oct
(14) |
Nov
(9) |
Dec
|
2006 |
Jan
|
Feb
|
Mar
(13) |
Apr
(2) |
May
(46) |
Jun
(2) |
Jul
(20) |
Aug
(26) |
Sep
(31) |
Oct
(5) |
Nov
(9) |
Dec
(13) |
2007 |
Jan
(24) |
Feb
(22) |
Mar
(13) |
Apr
(25) |
May
(25) |
Jun
(9) |
Jul
(20) |
Aug
(9) |
Sep
(26) |
Oct
(3) |
Nov
(4) |
Dec
(3) |
2008 |
Jan
(92) |
Feb
(35) |
Mar
(39) |
Apr
(15) |
May
|
Jun
|
Jul
(18) |
Aug
(5) |
Sep
(5) |
Oct
(7) |
Nov
(10) |
Dec
(27) |
2009 |
Jan
(35) |
Feb
(34) |
Mar
(13) |
Apr
(9) |
May
(18) |
Jun
(9) |
Jul
(15) |
Aug
(13) |
Sep
(64) |
Oct
(7) |
Nov
(43) |
Dec
|
2010 |
Jan
(75) |
Feb
(22) |
Mar
(44) |
Apr
(34) |
May
(47) |
Jun
(77) |
Jul
(28) |
Aug
(7) |
Sep
(45) |
Oct
(1) |
Nov
(19) |
Dec
(7) |
2011 |
Jan
(14) |
Feb
|
Mar
(6) |
Apr
(12) |
May
(19) |
Jun
(3) |
Jul
(8) |
Aug
(4) |
Sep
(3) |
Oct
(21) |
Nov
(11) |
Dec
(4) |
2012 |
Jan
(2) |
Feb
(9) |
Mar
|
Apr
(1) |
May
(2) |
Jun
|
Jul
(1) |
Aug
(5) |
Sep
(5) |
Oct
(1) |
Nov
(18) |
Dec
(2) |
2013 |
Jan
(15) |
Feb
(16) |
Mar
(8) |
Apr
(5) |
May
|
Jun
(1) |
Jul
(17) |
Aug
(3) |
Sep
(17) |
Oct
(43) |
Nov
(25) |
Dec
(9) |
2014 |
Jan
(4) |
Feb
(8) |
Mar
(20) |
Apr
(14) |
May
(49) |
Jun
(1) |
Jul
|
Aug
(18) |
Sep
(2) |
Oct
(1) |
Nov
(22) |
Dec
(3) |
2015 |
Jan
(41) |
Feb
(2) |
Mar
(34) |
Apr
(30) |
May
(14) |
Jun
(17) |
Jul
(29) |
Aug
(3) |
Sep
(3) |
Oct
(1) |
Nov
(7) |
Dec
(4) |
2016 |
Jan
|
Feb
|
Mar
(1) |
Apr
(4) |
May
(1) |
Jun
|
Jul
(1) |
Aug
|
Sep
(25) |
Oct
(9) |
Nov
(14) |
Dec
(13) |
2017 |
Jan
(11) |
Feb
(8) |
Mar
(12) |
Apr
(4) |
May
(25) |
Jun
(2) |
Jul
|
Aug
(5) |
Sep
(10) |
Oct
(25) |
Nov
|
Dec
(6) |
2018 |
Jan
(18) |
Feb
(6) |
Mar
(6) |
Apr
(1) |
May
(7) |
Jun
(13) |
Jul
(8) |
Aug
|
Sep
(5) |
Oct
(2) |
Nov
(17) |
Dec
(3) |
2019 |
Jan
(11) |
Feb
(4) |
Mar
(13) |
Apr
(19) |
May
(1) |
Jun
(2) |
Jul
(8) |
Aug
(4) |
Sep
(32) |
Oct
(51) |
Nov
(1) |
Dec
(9) |
2020 |
Jan
(9) |
Feb
(6) |
Mar
|
Apr
|
May
(3) |
Jun
(2) |
Jul
(5) |
Aug
(4) |
Sep
|
Oct
|
Nov
|
Dec
|
2021 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(7) |
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
(2) |
Nov
(3) |
Dec
|
2022 |
Jan
(3) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2024 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2025 |
Jan
(3) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Alan W. I. <ir...@be...> - 2005-03-01 02:41:24
|
On 2005-02-28 17:42-0700 R. V. Urvashi wrote: > Hi > > I'm using the C++ API for PLPLOT, and trying to use "GetCursor" to record > the world co-ordinates and subwindow index from a cursor event. Following > this event, I need to 'advance' to the chosen subwindow, and overlay a > plot. This entire process needs to be done repeatedly. > > Given a valid subwindow 'n', I am able to get the overlay plot on the > correct subwindow by doing the following > > pls->adv(n) > pls->vpor(...) > pls->wind(...) > ...plot > > However, when this is put into a loop and done repeatedly, the > 'subwindow' member returned via GetCursor does NOT always have the correct > subwindow index. Could someone please tell me if I'm missing something, or > if this could this be a bug ? The underlying C plGetCursor ultimately calls plcalc_world to get all the required information. That latter routine is documented at http://plplot.sourceforge.net/docbook-manual/plplot-html-5.3.1/plcalc_world.html. Note, the documentation there of the returned window index. You may be violating one of the many documented assumptions in obtaining that index. Also, please look at http://plplot.sourceforge.net/docbook-manual/plplot-html-5.3.1/viewport_window.html for an explanation of the hierarchy of viewing surfaces, (sub-)pages, viewports, and windows. I believe your above logic should work if you create sub-pages with plssub (note in CVS I have just changed that documentation to refer to the proper subpage term rather than sub-window) with one viewport and corresponding window on each, and if you mouse click _inside_ the viewport/window and not in the outer areas where the text labels go which is outside the viewport/window for the subpage. If after this explanation and reading the documentation you are still having difficulty understanding the results from GetCursor, try as a simple test calling calc_world, the C++ wrapped version of plcalc_world using appropriate relative device coordinate that are inside/outside the window of each sub-page. What window indices are returned by such an experiment? If you are not getting the indices you expect from that experiment, please post the complete simple test code here. Alan __________________________ Alan W. Irwin email: ir...@be... phone: 250-727-2902 Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca). Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); PLplot scientific plotting software package (plplot.org); the Yorick front-end to PLplot (yplot.sf.net); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ |
From: R. V. U. <rur...@ao...> - 2005-03-01 00:42:39
|
Hi I'm using the C++ API for PLPLOT, and trying to use "GetCursor" to record the world co-ordinates and subwindow index from a cursor event. Following this event, I need to 'advance' to the chosen subwindow, and overlay a plot. This entire process needs to be done repeatedly. Given a valid subwindow 'n', I am able to get the overlay plot on the correct subwindow by doing the following pls->adv(n) pls->vpor(...) pls->wind(...) ...plot However, when this is put into a loop and done repeatedly, the 'subwindow' member returned via GetCursor does NOT always have the correct subwindow index. Could someone please tell me if I'm missing something, or if this could this be a bug ? Thanks in advance. Urvashi |
From: Ali M. <so...@sy...> - 2004-12-17 22:17:45
|
I have PLPLot working on XP but for Java. -Ali ----- Original Message ----- From: <plp...@li...> To: <plp...@li...> Sent: Thursday, December 16, 2004 11:15 PM Subject: Plplot-general digest, Vol 1 #299 - 1 msg > Send Plplot-general mailing list submissions to > plp...@li... > > To subscribe or unsubscribe via the World Wide Web, visit > https://lists.sourceforge.net/lists/listinfo/plplot-general > or, via email, send a message with subject or body 'help' to > plp...@li... > > You can reach the person managing the list at > plp...@li... > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of Plplot-general digest..." > > > Today's Topics: > > 1. installing Plplot on WinXP (luca sguanci) > > --__--__-- > > Message: 1 > Date: Thu, 16 Dec 2004 14:53:55 +0100 > From: luca sguanci <lu...@li...> > To: plp...@li... > Subject: [Plplot-general] installing Plplot on WinXP > > hello, > > i would like to install the PLplot library v.5.3.0 on a WindowsXP > machine, so to use it with Perl-PDL. > i tried following the instructions in INSTALL.txt, so I downloaded the > free MSVisual C++ toolbox 2003 and started compiling. > i found there were some errors in the makefile, but I was able to go on. > > the problem that really stooped me is that when compiling some headers > file are missing: windows.h, winbase.h, windef.h etc. > I thought they should be there in the package i downloaded, but they > were missing. > so I had a look on google and i found something like the above .h is > contained in a cygwin package, the win32api package. > i downloaded it and i tried using that header files, but it doesn't work. > > does anybody know how to solve the problem? > does anyone succeded in get the PLplot working on WinXP? > > kind regards, luca sguanci. > > > > --__--__-- > > _______________________________________________ > Plplot-general mailing list > Plp...@li... > https://lists.sourceforge.net/lists/listinfo/plplot-general > > > End of Plplot-general Digest > |
From: Alan W. I. <ir...@be...> - 2004-12-17 17:20:23
|
On 2004-12-17 14:00+0100 S=E9bastien Villemot wrote: > Hi, > > I am currently trying to recompile a scientific software which uses a > very old version of plplot (around 1992-1994). The software can be found > here: > http://econ.lse.ac.uk/staff/dquah/tsrf.html For the others here, that appears to be an application written in C. > > I've tried to recompile it with a recent version of plplot (5.3.1), but > plplot complained about plinit() not having been called, and several > other things. > > I think the simplest way would be to get the source tarball of plplot > that the author initially used for his software; unfortunately, he > doesn't provide it anymore. S=E9bastien, I think the best way to deal with this problem is to change th= at old application code to be compatible with the modern PLplot library. If you follow the documentation at http://plplot.sourceforge.net/docbook-manual/plplot-html-5.3.1/ (especially Chapter 2 which will give you some ideas about initializing PLplot and=20 Chapter 16 which documents the modern API), I think that task will be entirely straightforward. Also, I suggest you look at some of our many examples (in examples/c) for guidance about how to call the PLplot C library. If you have any specific questions about a modern equivalent to some old PLplot call, don't hesitate to post your question to this list. Good luck! Alan __________________________ Alan W. Irwin email: ir...@be... phone: 250-727-2902 Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca). Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); PLplot scientific plotting software package (plplot.org); the Yorick front-end to PLplot (yplot.sf.net); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ |
From: V. <seb...@en...> - 2004-12-17 13:00:25
|
Hi, I am currently trying to recompile a scientific software which uses a very old version of plplot (around 1992-1994). The software can be found here: http://econ.lse.ac.uk/staff/dquah/tsrf.html I've tried to recompile it with a recent version of plplot (5.3.1), but plplot complained about plinit() not having been called, and several other things. I think the simplest way would be to get the source tarball of plplot that the author initially used for his software; unfortunately, he doesn't provide it anymore. To give you an idea of the version I need, I have copied below an include shipped with this software, which is said to be a private version of plplot.h. If someone still has such an old version of plplot on his hard drive, it would be very helpful! Thank you all, S. Villemot ----- /********************************************************************** * @(#) qplplot.h: Private version of plplot:plplot.h * Last edited: Wed Feb 9 18:56:05 1994 -- Danny Quah (dquah@exx) * $ * Revision History: * % Mon Apr 06 20:40:23 1992 -- Danny Quah (dquah@pc386nb) * define PLSTDC for qTURBOC * % Sat Oct 5 20:21:35 1991 -- Danny Quah (dquah@exx) * define check for previous inclusion. * % Sat Oct 5 13:07:14 1991 -- Danny Quah (dquah@exx) **********************************************************************/ #if !defined(Q_PLPLOT_H) #define Q_PLPLOT_H 1 #include "tsrf.h" /*--------------------------------------------------------------------*/ /* Symbolic constants for plotting option/driver */ /*--------------------------------------------------------------------*/ #define qHP_LJII 1 #define qPOST_SC 2 #define qPL_MAX_DRV 2 /* This qPL_MAX_DRV must match npldrivers calculated * in qunixdsp.c; checked in qplstar (). */ /*--------------------------------------------------------------------*/ /* plotting structs, unions */ /*--------------------------------------------------------------------*/ typedef struct { /* 3d plotting data struct */ char * theTitle ; /* can be NULL */ int nXpnts ; int nYpnts ; FLOAT * xPnts ; /* [0..nXpnts-1] */ char * xLabel ; FLOAT * yPnts ; /* [0..nYpnts-1] */ char * yLabel ; pDT_2D_TYPE pDt2d_Z ; char * zLabel ; float wMinZ ; float wMaxZ ; } sPL_3D_DATA, * pPL_3D_DATA ; /*--------------------------------------------------------------------*/ /* environment */ /*--------------------------------------------------------------------*/ #define env_EQ_SCALE (1) #define env_NE_SCALE (0) /* box only */ #define env_XS_BXNLY (-1) /* box, coords around edge */ #define env_XS_BXEDG (0) /* add axes x=0, y=0 */ #define env_XS_BXZER (1) /* add grid at major ticks */ #define env_XS_BXGRD (2) /*--------------------------------------------------------------------*/ /* axes options in the 3d surface plot */ /*--------------------------------------------------------------------*/ #define xs_BASIC_OPTS "bnstu" #define xs_Z_BOTH_SIDES "bcdmnstu" #define xs_Z_LEFT_SIDE "bdnstu" #define xs_Z_RIGHT_SIDE "cdmstv" #define xs_TICK_AUTO 0.0 #define xs_SUB_INT_AUTO 0 /*--------------------------------------------------------------------*/ /* representation for 3d mesh surface */ /*--------------------------------------------------------------------*/ #define msh4_EACH_Y 1 /* lines showing Z as a * function of X for each Y */ #define msh4_EACH_X 2 /* lines showing Z as a * function of Y for each X */ #define msh4_ALL 3 /* network of lines connecting * all points where Z is defined */ #define wcBOX_BASE_X 1.0 /* world coordinate box base */ #define wcBOX_BASE_Y 1.0 #define wcBOX_BASE_Z 0.75 /*--------------------------------------------------------------------*/ /* text relative to a viewport boundary */ /* text are parallel to edge, unless specified otherwise */ /*--------------------------------------------------------------------*/ #define txt_ON_TOP "t" #define txt_ON_LEFT "l" #define txt_ON_RIGHT "r" #define txt_ON_BOTTOM "b" #define txt_ON_LEFT_O "lv" /* text on left; written * orthogonal to edge */ #define txt_ON_RIGHT_O "rv" /* text on right; written * orthogonal to edge */ #define txt_DISPLACE 2.0 #define txt_POSITION 0.5 #define txt_REF_LEFT 0.0 #define txt_REF_RIGHT 1.0 #define txt_REF_CENTER 0.5 /*--------------------------------------------------------------------*/ /* viewport */ /*--------------------------------------------------------------------*/ #define vp_MIN_X 0.0 #define vp_MAX_X 1.0 #define vp_MIN_Y 0.0 #define vp_MAX_Y 0.8 /* save room for title on top */ /*--------------------------------------------------------------------*/ /* miscellaneous */ /*--------------------------------------------------------------------*/ #define plNEXT_SUB_PAGE 0 /* Mon Apr 06 20:42:06 1992 -- Danny Quah (dquah@pc386nb) */ /* These environments have GEN_PTR as (void *) and PRTO_TYP defined. */ #if defined(qTURBOC) || defined(qGCC_386) || defined (qGCC_NeXT) #define PLSTDC 1 #endif /*--------------------------------------------------------------------*/ /* what comes below is plplot.h: try not to modify */ /*--------------------------------------------------------------------*/ /* This header file contains all of the function prototypes and machine dependent defines */ #include <stdio.h> #ifdef LATTICE_50 #define PLSTDC 1 #define STDLIB 1 #endif #ifdef __STDC__ #define PLSTDC 1 #endif /* We need a signed char type for the fonts, MANX doesn't support this keyword but fortunately char's are signed by default. */ #if defined(sun4) || defined(vax) || defined(vax3200) || defined(AZTEC_C) typedef char SCHAR; #else typedef signed char SCHAR; #endif /* Let's try to get around some ANSI/non-ANSI problems. */ #ifdef PLSTDC typedef void VOID; #define PLARGS(a) a /* Use function prototypes. */ #else typedef char VOID; #define PLARGS(a) () #endif #ifdef NO_PROTOS #undef PLARGS #define PLARGS(a) () #endif #define MAX(a,b) ((a)>(b) ? (a) : (b)) #define MIN(a,b) ((a)<(b) ? (a) : (b)) #define ABS(a) ((a)<0 ? -(a) : (a)) #define round(a) (int)((a)<0. ? ((a)-.5) : ((a)+.5)) /* All of the void type declarations are made first. */ void pladv PLARGS((int page)); void plbeg PLARGS((int dev, int nx, int ny)); void plbin PLARGS((int nbin, FLOAT *x, FLOAT *y, int centre)); void plbox PLARGS((char *xopt, double xtick, int nxsub, char *yopt, \ double ytick, int nysub)); void plccal PLARGS((FLOAT **pts, int nx, int ny, double zlev, \ int ix, int iy, int ixg, int iyg, double *dist)); void plclr PLARGS((void)); void plcntr PLARGS((FLOAT **points, int nx, int ny, int kx, int lx, \ int ky, int ly, double zlev, int *iscan, \ int *ixstor, int *iystor, int nstor, \ void (*tr)(double x, double y, double *tx, double *ty))); void plcol PLARGS((int color)); void plcont PLARGS((FLOAT **z, int nx, int ny, int kx, int lx, \ int ky, int ly, FLOAT *clevel, int nlevel, \ void (*tr)())); void pldeco PLARGS((short **symbol, int *length, char *text)); void pldtik PLARGS((double vmin, double vmax, double *tick, int *nsubt, \ int *mode, int *prec, int *scale)); void plend PLARGS((void)); void plenv PLARGS((double xmin, double xmax, double ymin, double ymax, \ int just, int axis)); void pleop PLARGS((void)); void plerrx PLARGS((int n, FLOAT *xmin, FLOAT *xmax, FLOAT *y)); void plerry PLARGS((int n, FLOAT *x, FLOAT *ymin, FLOAT *ymax)); void plerx1 PLARGS((double xmin, double xmax, double y)); void plery1 PLARGS((double x, double ymin, double ymax)); void plexit PLARGS((char *msg)); void plfill PLARGS((int n, FLOAT *x, FLOAT *y)); void plfont PLARGS((int ifont)); void plfntld PLARGS((int fnt)); void plfontld PLARGS((int fnt)); void plfontrel PLARGS((void)); void plform PLARGS((double value, int scal, int prec, char *result)); void plgra PLARGS((void)); void plgspa PLARGS((double *xmin, double *xmax, double *ymin, double *ymax)); void plhist PLARGS((int n, FLOAT *data, double datmin, double datmax, \ int nbin, int oldwin)); void plhrsh PLARGS((int ch, int x, int y)); void pljoin PLARGS((double x1, double y1, double x2, double y2)); void pllab PLARGS((char *xlabel, char *ylabel, char *tlabel)); void pllclp PLARGS((int x1, int y1, int x2, int y2)); void plline PLARGS((int n, FLOAT *x, FLOAT *y)); void pllsty PLARGS((int line)); void plmtex PLARGS((char *side, double disp, double pos, double just, \ char *text)); void plorient PLARGS((int orient)); void plpat PLARGS((int n, int *inc, int *del)); void plpoi1 PLARGS((double x, double y, int code)); void plpoin PLARGS((int n, FLOAT *x, FLOAT *y, int code)); void plprec PLARGS((int setp, int prec)); void plpsty PLARGS((int patt)); void plptex PLARGS((double x, double y, double dx, double dy, double just, \ char *text)); void plr135 PLARGS((int *ix, int *iy, int isens)); void plr45 PLARGS((int *ix, int *iy, int isens)); void plschr PLARGS((double dep, double scale)); void plselect PLARGS((FILE *file)); void plsetup PLARGS((double xdpi, double ydpi, int xw, int yw)); void plsmaj PLARGS((double def, double scale)); void plsmin PLARGS((double def, double scale)); void plssym PLARGS((double def, double scale)); void plstar PLARGS((int nx, int ny)); void plstik PLARGS((double mx, double my, double dx, double dy)); void plstr PLARGS((int base, double *xform, int refx, int refy, char *string)); void plstyl PLARGS((int nels, int *mk, int *sp)); void plsvpa PLARGS((double xmin, double xmax, double ymin, double ymax)); void plsym PLARGS((int n, FLOAT *x, FLOAT *y, int code)); void plsym1 PLARGS((double x, double y, int code)); void pltext PLARGS((void)); void plupd PLARGS((int nms, int *mark, int *space, int *curel, int *pendn, int *timecnt, int *alarm)); void plvasp PLARGS((double aspect)); void plvpor PLARGS((double xmin, double xmax, double ymin, double ymax)); void plvsta PLARGS((void)); void plwid PLARGS((int pwid)); void plwind PLARGS((double xmin, double xmax, double ymin, double ymax)); void plxtik PLARGS((int x, int y, int below, int above)); void plxybx PLARGS((char *opt, char *label, double wx1, double wy1, \ double wx2, double wy2, double vmin, double vmax, \ double tick, int nsub, int nolast)); void plxytx PLARGS((double wx1, double wy1, double wx2, double wy2, \ double disp, double pos, double just, char *text)); void plytik PLARGS((int x, int y, int left, int right)); void plzbx PLARGS((char *opt, char *label, int right, double dx, double dy, \ double wx, double wy1, double wy2, double vmin, \ double vmax, double tick, int nsub)); void plztx PLARGS((char *opt, double dx, double dy, double wx, double wy1, \ double wy2, double disp, double pos, double just, char *t)); /* 3-D routine types*/ void pl3cut PLARGS((int sx1, int sy1, int sx2, int sy2, int su1, \ int sv1, int su2, int sv2, int *cx, int *cy)); void plbox3 PLARGS((char *xopt, char *xlabel, double xtick, int nsubx, \ char *yopt, char *ylabel, double ytick, int nsuby, \ char *zopt, char *zlabel, double ztick, int nsubz)); void plgrid3a PLARGS((double tick)); void plmesh PLARGS((FLOAT *x, FLOAT *y, FLOAT **z, \ int nx, int ny, int opt)); void plnxtv PLARGS((int *u, int *v, int n, int init)); void plot3d PLARGS((FLOAT *x, FLOAT *y, FLOAT **z, \ int nx, int ny, int opt, int side)); void plside3a PLARGS((FLOAT *x, FLOAT *y, FLOAT **z, int nx, \ int ny, int opt)); void plt3zz PLARGS((int xstar0, int ystar0, int dx, int dy, \ int flg0, int init, FLOAT *x, FLOAT *y, FLOAT **z, \ int nx, int ny, int *u, int *v)); void plw3d PLARGS((double basex, double basey, double height, double xmin0, \ double xmax0, double ymin0, double ymax0, double zmin0, \ double zmax0, double alt, double az)); /* The novice plplot user will not need to call the following functions */ void cleanup PLARGS((void)); void genlin PLARGS((int x1, int y1, int x2, int y2)); void movphy PLARGS((int x, int y)); void draphy PLARGS((int x, int y)); void movwor PLARGS((double x, double y)); void drawor PLARGS((double x, double y)); void setphy PLARGS((int xmin, int xmax, int ymin, int ymax)); void setpxl PLARGS((double xpmm0, double ypmm0)); void setsub PLARGS((void)); void xform PLARGS((double x, double y, double *tx, double *ty)); /* stuff in global.c */ void glev PLARGS((int *n)); void slev PLARGS((int n)); void gbase PLARGS((double *x, double *y, double *xc, double *yc)); void sbase PLARGS((double x, double y, double xc, double yc)); void gnms PLARGS((int *n)); void snms PLARGS((int n)); void gdev PLARGS((int *dev, int *term, int *gra)); void sdev PLARGS((int dev, int term, int gra)); void smod PLARGS((int term)); void gcurr PLARGS((int *ix, int *iy)); void scurr PLARGS((int ix, int iy)); void gdom PLARGS((double *xmin, double *xmax, double *ymin, double *ymax)); void sdom PLARGS((double xmin, double xmax, double ymin, double ymax)); void grange PLARGS((double *zscl, double *zmin, double *zmax)); void srange PLARGS((double zscl, double zmin, double zmax)); void gw3wc PLARGS((double *dxx, double *dxy, double *dyx, double *dyy, \ double *dyz)); void sw3wc PLARGS((double dxx, double dxy, double dyx, double dyy, double dyz)); void gvpp PLARGS((int *ixmin, int *ixmax, int *iymin, int *iymax)); void svpp PLARGS((int ixmin, int ixmax, int iymin, int iymax)); void gspp PLARGS((int *ixmin, int *ixmax, int *iymin, int *iymax)); void sspp PLARGS((int ixmin, int ixmax, int iymin, int iymax)); void gclp PLARGS((int *ixmin, int *ixmax, int *iymin, int *iymax)); void sclp PLARGS((int ixmin, int ixmax, int iymin, int iymax)); void gphy PLARGS((int *ixmin, int *ixmax, int *iymin, int *iymax)); void sphy PLARGS((int ixmin, int ixmax, int iymin, int iymax)); void gsub PLARGS((int *nx, int *ny, int *cs)); void ssub PLARGS((int nx, int ny, int cs)); void gumpix PLARGS((int *ix, int *iy)); void sumpix PLARGS((int ix, int iy)); void gatt PLARGS((int *ifnt, int *icol)); void satt PLARGS((int ifnt, int icol)); void gcol PLARGS((int *icol)); void scol PLARGS((int icol)); void gwid PLARGS((int *pwid)); void swid PLARGS((int pwid)); void gspd PLARGS((double *xmin, double *xmax, double *ymin, double *ymax)); void sspd PLARGS((double xmin, double xmax, double ymin, double ymax)); void gvpd PLARGS((double *xmin, double *xmax, double *ymin, double *ymax)); void svpd PLARGS((double xmin, double xmax, double ymin, double ymax)); void gvpw PLARGS((double *xmin, double *xmax, double *ymin, double *ymax)); void svpw PLARGS((double xmin, double xmax, double ymin, double ymax)); void gpixmm PLARGS((double *x, double *y)); void spixmm PLARGS((double x, double y)); void gwp PLARGS((double *xscl, double *xoff, double *yscl, double *yoff)); void swp PLARGS((double xscl, double xoff, double yscl, double yoff)); void gwm PLARGS((double *xscl, double *xoff, double *yscl, double *yoff)); void swm PLARGS((double xscl, double xoff, double yscl, double yoff)); void gdp PLARGS((double *xscl, double *xoff, double *yscl, double *yoff)); void sdp PLARGS((double xscl, double xoff, double yscl, double yoff)); void gmp PLARGS((double *xscl, double *xoff, double *yscl,double *yoff)); void smp PLARGS((double xscl, double xoff, double yscl, double yoff)); void gchr PLARGS((double *def, double *ht)); void schr PLARGS((double def, double ht)); void gsym PLARGS((double *def, double *ht)); void ssym PLARGS((double def, double ht)); void gmaj PLARGS((double *def, double *ht)); void smaj PLARGS((double def, double ht)); void gmin PLARGS((double *def, double *ht)); void smin PLARGS((double def, double ht)); void gpat PLARGS((int **inc, int **del, int *nlin)); void spat PLARGS((int *inc, int *delm, int nlin)); void gmark PLARGS((int **mar, int **spa, int **nels)); void smark PLARGS((int *mar, int *spa, int nels)); void gcure PLARGS((int **cur, int **pen, int **tim, int **ala)); void scure PLARGS((int cur, int pen, int time, int ala)); void gdevice PLARGS((int *dev)); void sdevice PLARGS((int dev)); void ggra PLARGS((int *gra)); void sgra PLARGS((int gra)); void gzback PLARGS((int **zbf, int **zbc, double **zbt)); void goldhivw PLARGS((int **ohivw)); void goldlovw PLARGS((int **olovw)); void set3mode PLARGS((int mod)); void set3upd PLARGS((int updm)); /* Functions that return double's */ double plstrl PLARGS((char *string)); /* Stuff in fcnvrt.c */ double dcmmx PLARGS((double x)); double dcmmy PLARGS((double y)); double dcscx PLARGS((double x)); double dcscy PLARGS((double y)); double mmdcx PLARGS((double x)); double mmdcy PLARGS((double y)); double scdcx PLARGS((double x)); double scdcy PLARGS((double y)); double wcmmx PLARGS((double x)); double wcmmy PLARGS((double y)); double w3wcx PLARGS((double x, double y, double z)); double w3wcy PLARGS((double x, double y, double z)); /* Functions returning ints */ int plabv PLARGS((int px, int py, int sx1, int sy1, int sx2, int sy2)); int plcvec PLARGS((int ch, signed char **xygrid)); int stindex PLARGS((char *str1, char *str2)); int strpos PLARGS((char *str, int chr)); int stsearch PLARGS((char *str, int chr)); /* This stuff is all in icnvrt.c */ int dcpcx PLARGS((double x)); int dcpcy PLARGS((double y)); int mmpcx PLARGS((double x)); int mmpcy PLARGS((double y)); int wcpcx PLARGS((double x)); int wcpcy PLARGS((double y)); /* Device independent routines */ void grsetup PLARGS((void)); void grorient PLARGS((void)); void grselect PLARGS((void)); void grbeg PLARGS((int dev)); void grclr PLARGS((void)); void grpage PLARGS((void)); void greop PLARGS((void)); void grcol PLARGS((void)); void grwid PLARGS((void)); void grinit PLARGS((void)); void grgra PLARGS((void)); void grline PLARGS((int x1, int y1, int x2, int y2)); void grtext PLARGS((void)); void grtidy PLARGS((void)); #endif /* Q_PLPLOT_H */ /* eof qplplot.h */ |
From: Arjen M. <arj...@wl...> - 2004-12-17 07:16:31
|
luca sguanci wrote: > > hello, > > i would like to install the PLplot library v.5.3.0 on a WindowsXP > machine, so to use it with Perl-PDL. > i tried following the instructions in INSTALL.txt, so I downloaded the > free MSVisual C++ toolbox 2003 and started compiling. > i found there were some errors in the makefile, but I was able to go on. > > the problem that really stooped me is that when compiling some headers > file are missing: windows.h, winbase.h, windef.h etc. > I thought they should be there in the package i downloaded, but they > were missing. windows.h, winbase.h etc. are part of the MSVC/C++ compiler or the Windows Development Kit. I am rather surprised that they are not contained in the MS Visual C++ 2003 toolbox. Are you sure that the right include directories are specified? > so I had a look on google and i found something like the above .h is > contained in a cygwin package, the win32api package. > i downloaded it and i tried using that header files, but it doesn't work. > > does anybody know how to solve the problem? > does anyone succeded in get the PLplot working on WinXP? > Well, I have never used PLplot with Perl on Windows, but I can assure you that the C, Fortran, Tcl and Java versions work alright. (FYI: I maintain the Windows driver) I think the way forward is to take one step at a time: - First check that the windows.h etc headers are present in the MSVC toolbox. - Then try to make the C examples. - If that succeeds, try making the Perl bindings. If at any point you fail to get what you want, can you post the error messages and a detailed description of the erroneous behaviour? Regards, Arjen - If |
From: luca s. <lu...@li...> - 2004-12-16 17:12:43
|
hello, i would like to install the PLplot library v.5.3.0 on a WindowsXP machine, so to use it with Perl-PDL. i tried following the instructions in INSTALL.txt, so I downloaded the free MSVisual C++ toolbox 2003 and started compiling. i found there were some errors in the makefile, but I was able to go on. the problem that really stooped me is that when compiling some headers file are missing: windows.h, winbase.h, windef.h etc. I thought they should be there in the package i downloaded, but they were missing. so I had a look on google and i found something like the above .h is contained in a cygwin package, the win32api package. i downloaded it and i tried using that header files, but it doesn't work. does anybody know how to solve the problem? does anyone succeded in get the PLplot working on WinXP? kind regards, luca sguanci. |
From: Tune K. <ka...@sl...> - 2004-12-05 07:11:40
|
Curtis, Thank you for the prompt response. Yes, it is now working. Many thanks for your advice. Tune Kamae ----- Original Message ----- From: "Curtis Cooper" <cu...@hi...> To: "Tune Kamae" <ka...@sl...> Cc: <plp...@li...> Sent: Saturday, December 04, 2004 9:37 PM Subject: Re: [Plplot-general] RGB mapping for plsmap1 > I think the PLplot colormap setting functions expect color ranges clamped > between [0,1]. > > Cheers, > Curtis > > > > * * * * * * * * * * * * * * * * * * * * * * * * * * * * > * Curtis S. Cooper, Graduate Research Assistant * > * Lunar and Planetary Laboratory, University of Arizona * > * http://www.lpl.arizona.edu/~curtis/ * > * Kuiper Space Sciences, Rm. 318 * > * 1629 E. University Blvd., * > * Tucson, AZ 85721 * * * * * * * * * * * * * * * > * Wk: (520) 621-1471 * > * * * * * * * * * * * * > > On Sat, 4 Dec 2004, Tune Kamae wrote: > > > Dear PLplot experts, > > > > I have been using PLplot through python/numarray to plot > > astronomical intensity maps in false color for 2 years. > > Ever since I wrote the first shaded contour plot, I have > > been wishing to improve the contrasts and the dynamic > > range of the Hue mapping. I came up with an inproved > > mapping using RGB (can also be in HSV) by making > > the function non0linear. This requires many reference > > points (eg. 20 points). > > > > Following the manual description on plshades and > > the python example xw11.py, I wrote the following > > cmap1_init_3D. But it doesn't work. > > > > I would appreciate any guidance or suggestion. > > > > T. Kamae, Stanford Linear Accelerator Center. > > > > -------------------------------------------------------------------------- -- > > # Color map 1 in RGB space for plot3D > > # (from plplot/examples/python/xw11.py) > > > > def cmap1_init_3D(self, gray): > > """Routine for defining a specific color map 1 in > > RGB space. If gray is true, use basic grayscale > > variation from half-dark to light. Otherwise use > > a parameteized mapping to R(z), G(z), and B(z) where > > z=[0,1]. i=0 corresponds to z=1.0, the brightest > > color for this implementation. > > """ > > > > # Independent variable of control points. > > i = arange(0.0, 1.05, 0.05) > > if gray: > > # Red for control points. > > r = arange(241.0, 0.0, -12.0) > > # Green for control points. > > g = arange(241.0, 0.0, -12.0) > > # Blue for control points. > > b = arange(241.0, 0.0, -12.0) > > else: > > z=arange(1.0,1.05,0.05) > > z[20]=1.0 > > # Red for control points. > > r = 113.9*sin(7.64*z**1.705+0.701)-916.1*(z+1.755)**1.862\ > > +3587.9*z+2563.4 > > rr = clip(r,0.0,255.0) > > # Green for control points. > > g = 70.0*sin(8.7*z**1.26-2.418)+151.7*z**0.5+70.0 > > gg = clip(g,0.0,255.0) > > # Blue for control points. > > b = 194.5*z**2.88+99.72*exp(-77.24*(z-0.742)**2)\ > > +45.40*z**0.089+10.0 > > bb = clip(b,0.0,255.0) > > > > # Integer flag array is zero (no interpolation along far-side > > # of colour figure.) > > rev = array([0]+[1]*19+[0]) > > # number of cmap1 colours is 256 in this case. > > # smaller the number of colours, the clearer the z contour > > #plscmap1n(256) > > plscmap1n(21) > > # Interpolate between control points to set up cmap1. > > plscmap1l(1, i, rr, gg, bb, rev) > > > > > > > > > > ------------------------------------------------------- > > SF email is sponsored by - The IT Product Guide > > Read honest & candid reviews on hundreds of IT Products from real users. > > Discover which products truly live up to the hype. Start reading now. > > http://productguide.itmanagersjournal.com/ > > _______________________________________________ > > Plplot-general mailing list > > Plp...@li... > > https://lists.sourceforge.net/lists/listinfo/plplot-general > > > > |
From: Alan W. I. <ir...@be...> - 2004-12-05 06:24:58
|
On 2004-12-04 22:37-0700 Curtis Cooper wrote: > I think the PLplot colormap setting functions expect color ranges clamped > between [0,1]. > > Cheers, > Curtis > On Sat, 4 Dec 2004, Tune Kamae wrote: > >> Dear PLplot experts, >> >> z=arange(1.0,1.05,0.05) ^^^ Tune, following up on what Curtis said, any number in the range 0 --> 1 including those end-points is okay. But the above gives on my platform the two-point array [ 1. 1.05] which is clearly out of bounds. Alternatively, for slightly different floating-point rounding it would only give you [1.] which I don't think you want. I think you meant 0.0 for the lower limit which gives on my platform [ 0. 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 0.55 0.6 0.65 0.7 0.75 0.8 0.85 0.9 0.95 1. ] Which should be fine so long as some stray round-off error doesn't change that 1.0 to 1.0+eps or else stick on an extra 1.05 value at the upper limit. The 1.0 to 0.0 change might make your logic work, but better yet, I would keep the floating point logic to a minimum, that is, use integer arrays (to make sure you get the correct number of values exactly), convert them to floating point by multiplying by 0.05, then redefine the upper end (as you do already) to make sure. z = 0.05*arange(21) z[20]=1. HTH. Alan __________________________ Alan W. Irwin email: ir...@be... phone: 250-727-2902 Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca). Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); PLplot scientific plotting software package (plplot.org); the Yorick front-end to PLplot (yplot.sf.net); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ |
From: Curtis C. <cu...@hi...> - 2004-12-05 05:37:16
|
I think the PLplot colormap setting functions expect color ranges clamped between [0,1]. Cheers, Curtis * * * * * * * * * * * * * * * * * * * * * * * * * * * * * Curtis S. Cooper, Graduate Research Assistant * * Lunar and Planetary Laboratory, University of Arizona * * http://www.lpl.arizona.edu/~curtis/ * * Kuiper Space Sciences, Rm. 318 * * 1629 E. University Blvd., * * Tucson, AZ 85721 * * * * * * * * * * * * * * * * Wk: (520) 621-1471 * * * * * * * * * * * * * On Sat, 4 Dec 2004, Tune Kamae wrote: > Dear PLplot experts, > > I have been using PLplot through python/numarray to plot > astronomical intensity maps in false color for 2 years. > Ever since I wrote the first shaded contour plot, I have > been wishing to improve the contrasts and the dynamic > range of the Hue mapping. I came up with an inproved > mapping using RGB (can also be in HSV) by making > the function non0linear. This requires many reference > points (eg. 20 points). > > Following the manual description on plshades and > the python example xw11.py, I wrote the following > cmap1_init_3D. But it doesn't work. > > I would appreciate any guidance or suggestion. > > T. Kamae, Stanford Linear Accelerator Center. > > ---------------------------------------------------------------------------- > # Color map 1 in RGB space for plot3D > # (from plplot/examples/python/xw11.py) > > def cmap1_init_3D(self, gray): > """Routine for defining a specific color map 1 in > RGB space. If gray is true, use basic grayscale > variation from half-dark to light. Otherwise use > a parameteized mapping to R(z), G(z), and B(z) where > z=[0,1]. i=0 corresponds to z=1.0, the brightest > color for this implementation. > """ > > # Independent variable of control points. > i = arange(0.0, 1.05, 0.05) > if gray: > # Red for control points. > r = arange(241.0, 0.0, -12.0) > # Green for control points. > g = arange(241.0, 0.0, -12.0) > # Blue for control points. > b = arange(241.0, 0.0, -12.0) > else: > z=arange(1.0,1.05,0.05) > z[20]=1.0 > # Red for control points. > r = 113.9*sin(7.64*z**1.705+0.701)-916.1*(z+1.755)**1.862\ > +3587.9*z+2563.4 > rr = clip(r,0.0,255.0) > # Green for control points. > g = 70.0*sin(8.7*z**1.26-2.418)+151.7*z**0.5+70.0 > gg = clip(g,0.0,255.0) > # Blue for control points. > b = 194.5*z**2.88+99.72*exp(-77.24*(z-0.742)**2)\ > +45.40*z**0.089+10.0 > bb = clip(b,0.0,255.0) > > # Integer flag array is zero (no interpolation along far-side > # of colour figure.) > rev = array([0]+[1]*19+[0]) > # number of cmap1 colours is 256 in this case. > # smaller the number of colours, the clearer the z contour > #plscmap1n(256) > plscmap1n(21) > # Interpolate between control points to set up cmap1. > plscmap1l(1, i, rr, gg, bb, rev) > > > > > ------------------------------------------------------- > SF email is sponsored by - The IT Product Guide > Read honest & candid reviews on hundreds of IT Products from real users. > Discover which products truly live up to the hype. Start reading now. > http://productguide.itmanagersjournal.com/ > _______________________________________________ > Plplot-general mailing list > Plp...@li... > https://lists.sourceforge.net/lists/listinfo/plplot-general > |
From: Tune K. <ka...@sl...> - 2004-12-05 04:27:07
|
Dear PLplot experts, I have been using PLplot through python/numarray to plot astronomical intensity maps in false color for 2 years. Ever since I wrote the first shaded contour plot, I have been wishing to improve the contrasts and the dynamic range of the Hue mapping. I came up with an inproved mapping using RGB (can also be in HSV) by making the function non0linear. This requires many reference points (eg. 20 points). Following the manual description on plshades and the python example xw11.py, I wrote the following cmap1_init_3D. But it doesn't work. I would appreciate any guidance or suggestion. T. Kamae, Stanford Linear Accelerator Center. ---------------------------------------------------------------------------- # Color map 1 in RGB space for plot3D # (from plplot/examples/python/xw11.py) def cmap1_init_3D(self, gray): """Routine for defining a specific color map 1 in RGB space. If gray is true, use basic grayscale variation from half-dark to light. Otherwise use a parameteized mapping to R(z), G(z), and B(z) where z=[0,1]. i=0 corresponds to z=1.0, the brightest color for this implementation. """ # Independent variable of control points. i = arange(0.0, 1.05, 0.05) if gray: # Red for control points. r = arange(241.0, 0.0, -12.0) # Green for control points. g = arange(241.0, 0.0, -12.0) # Blue for control points. b = arange(241.0, 0.0, -12.0) else: z=arange(1.0,1.05,0.05) z[20]=1.0 # Red for control points. r = 113.9*sin(7.64*z**1.705+0.701)-916.1*(z+1.755)**1.862\ +3587.9*z+2563.4 rr = clip(r,0.0,255.0) # Green for control points. g = 70.0*sin(8.7*z**1.26-2.418)+151.7*z**0.5+70.0 gg = clip(g,0.0,255.0) # Blue for control points. b = 194.5*z**2.88+99.72*exp(-77.24*(z-0.742)**2)\ +45.40*z**0.089+10.0 bb = clip(b,0.0,255.0) # Integer flag array is zero (no interpolation along far-side # of colour figure.) rev = array([0]+[1]*19+[0]) # number of cmap1 colours is 256 in this case. # smaller the number of colours, the clearer the z contour #plscmap1n(256) plscmap1n(21) # Interpolate between control points to set up cmap1. plscmap1l(1, i, rr, gg, bb, rev) |
From: Emmanuel B. <be...@ia...> - 2004-12-02 16:35:22
|
Thanks a lot!! It works perfect now! Note that "make uninstall" does not actually uninstall everything (some things remain in $prefix/share). Emmanuel. Alan W. Irwin wrote: > On 2004-12-02 00:27+0100 Emmanuel Bertin wrote: > >> Hi all, >> >> Although there is no problem on x86 systems, a strange thing happens >> when linking statically a C program with PLPlot on the x86-64 >> architecture: *Any* unsuccesfull call to fopen() happens to generate >> immediately a segmentation fault!! I tried with various 5.x versions, >> including the latest 5.3.1.cvs.20041028, with different versions of >> glibc on Mandrake 10.x and the latest Gentoo. No such problem ever >> happens when linking dynamically. Here is what strace says: >> >> brk(0) = 0xd4c000 >> brk(0xd6d000) = 0xd6d000 >> stat("/tmp", {st_mode=S_IFDIR|S_ISVTX|0777, st_size=420, ...}) = 0 >> --- SIGSEGV (Segmentation fault) @ 0 (0) --- >> +++ killed by SIGSEGV +++ >> >> Does anyone have a clue??? I guess it may have to do with some library >> used by PLPlot, but I have not been able to find which one. > > > I suspect you have the dynamic drivers enabled when they shouldn't be (for > a static library build). > > Can you generate the behaviour with any of the _installed_ examples using > the exact procedure below? > > You must use --disable-dynamic --disable-dyndrivers as configure options > for > the static build to be done correctly. Also, you must clean out all the > dynamic libraries from the $prefix install area before doing the usual > "./configure --options.... ; make; make install" of the normal configure, > build, and install sequence. > > After such a special build and install, then do > > cp -a $prefix/share/plplot$version/examples /tmp > cd /tmp/examples > make > > to compile and properly link the examples against the static libraries. > $prefix is the prefix you specified at configure time. > > If you follow the above directions for building static libraries and > building examples linked against them for version 5.3.1.cvs.20041028, and > the examples segfault, we want to know about it. Conversely, if the > examples > work with the above make command, then you should look at that linking > generated by that make command and follow it for your own statically linked > applications. > > Alan > __________________________ > Alan W. Irwin > email: ir...@be... > phone: 250-727-2902 > > Astronomical research affiliation with Department of Physics and Astronomy, > University of Victoria (astrowww.phys.uvic.ca). > > Programming affiliations with the FreeEOS equation-of-state implementation > for stellar interiors (freeeos.sf.net); PLplot scientific plotting software > package (plplot.org); the Yorick front-end to PLplot (yplot.sf.net); the > Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project > (lbproject.sf.net). > __________________________ > > Linux-powered Science > __________________________ > > > ------------------------------------------------------- > SF email is sponsored by - The IT Product Guide > Read honest & candid reviews on hundreds of IT Products from real users. > Discover which products truly live up to the hype. Start reading now. > http://productguide.itmanagersjournal.com/ > _______________________________________________ > Plplot-general mailing list > Plp...@li... > https://lists.sourceforge.net/lists/listinfo/plplot-general |
From: Alan W. I. <ir...@be...> - 2004-12-02 02:01:51
|
On 2004-12-02 00:27+0100 Emmanuel Bertin wrote: > Hi all, > > Although there is no problem on x86 systems, a strange thing happens when > linking statically a C program with PLPlot on the x86-64 architecture: *Any* > unsuccesfull call to fopen() happens to generate immediately a segmentation > fault!! I tried with various 5.x versions, including the latest > 5.3.1.cvs.20041028, with different versions of glibc on Mandrake 10.x and the > latest Gentoo. No such problem ever happens when linking dynamically. Here is > what strace says: > > brk(0) = 0xd4c000 > brk(0xd6d000) = 0xd6d000 > stat("/tmp", {st_mode=S_IFDIR|S_ISVTX|0777, st_size=420, ...}) = 0 > --- SIGSEGV (Segmentation fault) @ 0 (0) --- > +++ killed by SIGSEGV +++ > > Does anyone have a clue??? I guess it may have to do with some library used > by PLPlot, but I have not been able to find which one. I suspect you have the dynamic drivers enabled when they shouldn't be (for a static library build). Can you generate the behaviour with any of the _installed_ examples using the exact procedure below? You must use --disable-dynamic --disable-dyndrivers as configure options for the static build to be done correctly. Also, you must clean out all the dynamic libraries from the $prefix install area before doing the usual "./configure --options.... ; make; make install" of the normal configure, build, and install sequence. After such a special build and install, then do cp -a $prefix/share/plplot$version/examples /tmp cd /tmp/examples make to compile and properly link the examples against the static libraries. $prefix is the prefix you specified at configure time. If you follow the above directions for building static libraries and building examples linked against them for version 5.3.1.cvs.20041028, and the examples segfault, we want to know about it. Conversely, if the examples work with the above make command, then you should look at that linking generated by that make command and follow it for your own statically linked applications. Alan __________________________ Alan W. Irwin email: ir...@be... phone: 250-727-2902 Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca). Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); PLplot scientific plotting software package (plplot.org); the Yorick front-end to PLplot (yplot.sf.net); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ |
From: Emmanuel B. <be...@ia...> - 2004-12-01 23:27:36
|
Hi all, Although there is no problem on x86 systems, a strange thing happens when linking statically a C program with PLPlot on the x86-64 architecture: *Any* unsuccesfull call to fopen() happens to generate immediately a segmentation fault!! I tried with various 5.x versions, including the latest 5.3.1.cvs.20041028, with different versions of glibc on Mandrake 10.x and the latest Gentoo. No such problem ever happens when linking dynamically. Here is what strace says: brk(0) = 0xd4c000 brk(0xd6d000) = 0xd6d000 stat("/tmp", {st_mode=S_IFDIR|S_ISVTX|0777, st_size=420, ...}) = 0 --- SIGSEGV (Segmentation fault) @ 0 (0) --- +++ killed by SIGSEGV +++ Does anyone have a clue??? I guess it may have to do with some library used by PLPlot, but I have not been able to find which one. Thanks for this very nice library. Emmanuel. PS: One may wonder the purpose of statically linking a library which depends on specific font files at runtime. Well we made a patch that circumvents this and allows you to use and distribute programs linked with PLPLOT without having PLPLOT installed (this was proposed to the developers for inclusion in the official package but we got no response)... But the bug above occurs also without the patch applied. |
From: Alan W. I. <ir...@be...> - 2004-12-01 17:41:32
|
On 2004-12-01 07:16+0100 Lehmann, Eckhard {TR-I~Penzberg} wrote: > Hi, > > I wonder if there is an account (PayPal would be the best, probably) for > donations to the Plplot project? I believe SourceForge makes it easy for us to set this up, but this question has not come up before, and, frankly, the developers haven't discussed it yet. It is certainly something we might consider for the future. For now, our modus operandi is to accept donations of code, testing, and documentation. Thanks, Eckhard, for that kind thought! Alan __________________________ Alan W. Irwin email: ir...@be... phone: 250-727-2902 Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca). Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); PLplot scientific plotting software package (plplot.org); the Yorick front-end to PLplot (yplot.sf.net); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ |
From: Lehmann, E. {TR-I~Penzberg} <eck...@Ro...> - 2004-12-01 06:16:46
|
Hi, I wonder if there is an account (PayPal would be the best, probably) for donations to the Plplot project? Eckhard ;) |
From: <hba...@ma...> - 2004-11-29 05:10:54
|
Hello, How does one specify the physical size of a Plplot graph? For example, imagine I'd like to make a series of plots that are 5" x 3.5". I ask primarily because I'm working on updating the Plplot AquaTerm driver (for Mac OS-X). Currently the driver sets the view surface to be a somewhat arbitrary & large rectangle. When saved, plots that are smaller then this rectangle will include a large empty border. So, if Plplot specifies a physical size I'd like the driver to catch that and resize the window accordingly. Thank you, -Hazen |
From: Rafael L. <rla...@us...> - 2004-11-18 16:45:08
|
* Curtis Cooper <cu...@hi...> [2004-11-17 14:34]: > I have made similar image plots in IDL that don't manifest this problem > when they are saved as PS files, so I'm pretty sure it has something to do > with how the PS driver in PLplot is implemented. Any further suggestions > would be much appreciated. It would be interesting if you could provide one of those PS files produced with IDL, such that we can see if there some tricky PostScript code that we could implement in the PS driver. At any rate, I can hardly imagine how the situation can be improved. The Plplot function plcont generates a series of colored patches which are translated into filled polylines by the PS driver. Adjacent patches are perfectly juxtaposed, meaning that the coordinates in their common borders coincide. I generated a example PostScript file (attached below) with two red squares in a white background that must look like a rectangle. However, when viewing this simple file with gv and antialising activated, I see a white line between the two squares. -- Rafael |
From: Alan W. I. <ir...@be...> - 2004-11-18 00:16:52
|
On 2004-11-17 14:34-0700 Curtis Cooper wrote: > There's still a problem related to this, however, which arises when trying > to rasterize the PS file output from PLplot. This is useful when making > presentations, posters, etc. For the conference I just returned from, I > used CorelDRAW to make the poster because it handily imports EPS files. > When I rasterized the whole poster, however, the streaks across the page > appeared, just as you see when you look at it in gv with antialiasing > turned on. Similarly, when you use ImageMagick's convert program to go > from PS to PNG or JPEG, the artifacts are visible. I suggest you turn off anti-aliasing for convert (use the +antialias option to turn off the default anti-aliasing in the convert programme.) > > I have made similar image plots in IDL that don't manifest this problem > when they are saved as PS files, so I'm pretty sure it has something to do > with how the PS driver in PLplot is implemented. Any further suggestions > would be much appreciated. I suspect the post-script anti-aliasing is being implemented using variable transparency. Anyhow, it is clear if you look at high-res, what is happening is part of the background or some other hidden part of the plot is leaking through when anti-aliasing is turned on, and there are no such problems when it is turned off. Bill Paxton (one of our users who is something of a postscript expert) has suggested this really is the fault of the antialiasing code associated with postscript converters or viewers. To work around that problem he suggested the following brute-force change. --- ps.c Sat Sep 11 13:46:51 2004 +++ ps_mod.c Sat Sep 11 13:46:28 2004 @@ -296,7 +296,8 @@ fprintf(OF, "/A {0.5 0 360 arc} def\n"); fprintf(OF, "/S {stroke} def\n"); fprintf(OF, "/Z {stroke newpath} def\n"); - fprintf(OF, "/F {fill} def\n"); + fprintf(OF, "/F {gsave 3 setlinewidth stroke grestore fill} bind def\n"); + /*fprintf(OF, "/F {fill} def\n");*/ fprintf(OF, "/C {setrgbcolor} def\n"); fprintf(OF, "/G {setgray} def\n"); fprintf(OF, "/W {setlinewidth} def\n"); I don't understand postscript, but just from the name of the setlinewidth command he is inserting it looks like he is increasing the line width for fills. Anyhow, this did seem to work to get rid of artifacts in example 16 when antialiasing is turned on, and, Curtis, you may want to give this patch a try for your particular problem. OTOH, this patch severely magnifies the surface contour problem (see example 8, pages 4 and 8 for examples). The surface contours are done on top of their associated filled triangles which is a neat trick to hide those surface contours whenever the associated triangle is hidden. However, the contour associated with a given triangle may have its ends slightly misaligned from the triangle edges, and the result is a semi-broken looking surface contour. (I made one unsuccessful attempt to fix this problem, and it is still on my agenda to have another go at fixing this.) Anyhow, Bill's patch above makes this already bad situation much worse (presumably because the extra line width for fills is overlapping (and therefore hiding) parts of adjacent triangles and their associated surface contours). Personally, I think instead of using the above patch and accepting the bad surface contours as a result, it is just easier to avoid antialiasing corrections for viewers or postscript converters (once you are aware of the issue). Of course without antialiasing the labels on the plot won't look as good on screen, but this is not an issue if you are printing the postscript file for a poster rather than just viewing it on screen. Alan __________________________ Alan W. Irwin email: ir...@be... phone: 250-727-2902 Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca). Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); PLplot scientific plotting software package (plplot.org); the Yorick front-end to PLplot (yplot.sf.net); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ |
From: Andrew R. <and...@us...> - 2004-11-17 22:05:54
|
I know this doesn't remove the underlying problem, but you will probably get better results using the plplot png or jpg drivers directly rather than going via eps if you intend to rasterize the plots at some stage. Andrew On Wed, Nov 17, 2004 at 02:34:25PM -0700, Curtis Cooper wrote: > There's still a problem related to this, however, which arises when trying > to rasterize the PS file output from PLplot. This is useful when making > presentations, posters, etc. For the conference I just returned from, I > used CorelDRAW to make the poster because it handily imports EPS files. > When I rasterized the whole poster, however, the streaks across the page > appeared, just as you see when you look at it in gv with antialiasing > turned on. Similarly, when you use ImageMagick's convert program to go > from PS to PNG or JPEG, the artifacts are visible. > > I have made similar image plots in IDL that don't manifest this problem > when they are saved as PS files, so I'm pretty sure it has something to do > with how the PS driver in PLplot is implemented. Any further suggestions > would be much appreciated. > > Cheers, > Curtis > |
From: Curtis C. <cu...@hi...> - 2004-11-17 21:34:29
|
There's still a problem related to this, however, which arises when trying to rasterize the PS file output from PLplot. This is useful when making presentations, posters, etc. For the conference I just returned from, I used CorelDRAW to make the poster because it handily imports EPS files. When I rasterized the whole poster, however, the streaks across the page appeared, just as you see when you look at it in gv with antialiasing turned on. Similarly, when you use ImageMagick's convert program to go from PS to PNG or JPEG, the artifacts are visible. I have made similar image plots in IDL that don't manifest this problem when they are saved as PS files, so I'm pretty sure it has something to do with how the PS driver in PLplot is implemented. Any further suggestions would be much appreciated. Cheers, Curtis |
From: Andrew R. <and...@us...> - 2004-11-17 20:54:20
|
On Wed, Nov 17, 2004 at 08:21:44AM -0800, Alan Irwin wrote: > On 2004-11-17 10:07-0000 Andrew Ross wrote: > > >On Tue, Nov 16, 2004 at 11:20:03PM -0800, Alan Irwin wrote: > >>Antialiasing must be off in > >>the postscript viewer (e.g., gv) to get good looking plots on the screen. > >>Is > >>that the problem you refer to here? Try turning antialiasing off in the > >>postscript viewer to see whether the problem you are referring to goes > >>away. > > > >I've observed this as a rendering issue with the viewer rather than a > >plplot problem. Reloading or refreshing the view (by pressing `a' in gv) > >usually fixes it for me. I have seen similar problems with plots from > >gnuplot and fixed them the same way. In my experience antialiasing makes > >no difference to this issue of lines across the plot. > > Hmmm... I had never heard of that "a" command before, but here is what the > gv man page states: > > A Toggle antialiasing on and off > > Sure enough, when I tried it on the example 16 postscript file result, > antialiasing (along with the artifacts) toggles on and off. So this really > is an antialiased rendering issue with this postscript viewer. OK. So I should have read the man page... It's a quick way to fix the problem though since gv seems to default to antialiasing on my system and for a lot of things (but not plplot) that's what I want. Andrew |
From: Alan W. I. <ir...@be...> - 2004-11-17 16:21:48
|
On 2004-11-17 10:07-0000 Andrew Ross wrote: > On Tue, Nov 16, 2004 at 11:20:03PM -0800, Alan Irwin wrote: >> Antialiasing must be off in >> the postscript viewer (e.g., gv) to get good looking plots on the screen. Is >> that the problem you refer to here? Try turning antialiasing off in the >> postscript viewer to see whether the problem you are referring to goes away. > > I've observed this as a rendering issue with the viewer rather than a > plplot problem. Reloading or refreshing the view (by pressing `a' in gv) > usually fixes it for me. I have seen similar problems with plots from > gnuplot and fixed them the same way. In my experience antialiasing makes > no difference to this issue of lines across the plot. Hmmm... I had never heard of that "a" command before, but here is what the gv man page states: A Toggle antialiasing on and off Sure enough, when I tried it on the example 16 postscript file result, antialiasing (along with the artifacts) toggles on and off. So this really is an antialiased rendering issue with this postscript viewer. Arjen, I suggest you also consider this possibility as the source of the artifacts you have seen on windows postscript viewers. Alan __________________________ Alan W. Irwin email: ir...@be... phone: 250-727-2902 Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca). Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); PLplot scientific plotting software package (plplot.org); the Yorick front-end to PLplot (yplot.sf.net); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ |
From: Andrew R. <and...@us...> - 2004-11-17 10:07:42
|
On Tue, Nov 16, 2004 at 11:20:03PM -0800, Alan Irwin wrote: > On 2004-11-16 22:23-0700 Curtis Cooper wrote: > > >>>2) Image plots using the postscript driver come out with streaks across > >>>the image, as can be seen by running example x16c and saving to a > >>>postscript driver (either ps or psc). > >> > >>What platform and what version of PLplot? I have never seen such problems > >>with example 16 on Linux. > >> > > > >This happens in both Debian and Mandrake Linux for the Pentium 4. > >Using PLplot v. 5.3.1 compiled from the source code tarball on the > >website. > > Several of our Developers (including me) use Debian testing so that distro > (and probably Mandrake as well) should be okay for you. However, now I have > thought about what you have said some more, I realize my comment above has > an important qualifier which I failed to state. Antialiasing must be off in > the postscript viewer (e.g., gv) to get good looking plots on the screen. Is > that the problem you refer to here? Try turning antialiasing off in the > postscript viewer to see whether the problem you are referring to goes away. I've observed this as a rendering issue with the viewer rather than a plplot problem. Reloading or refreshing the view (by pressing `a' in gv) usually fixes it for me. I have seen similar problems with plots from gnuplot and fixed them the same way. In my experience antialiasing makes no difference to this issue of lines across the plot. Andrew |
From: Arjen M. <arj...@wl...> - 2004-11-17 07:47:49
|
"Alan W. Irwin" wrote: > > On 2004-11-16 22:23-0700 Curtis Cooper wrote: > > >>> 2) Image plots using the postscript driver come out with streaks across > >>> the image, as can be seen by running example x16c and saving to a > >>> postscript driver (either ps or psc). > >> > >> What platform and what version of PLplot? I have never seen such problems > >> with example 16 on Linux. > >> > > > > This happens in both Debian and Mandrake Linux for the Pentium 4. > > Using PLplot v. 5.3.1 compiled from the source code tarball on the > > website. > > Several of our Developers (including me) use Debian testing so that distro > (and probably Mandrake as well) should be okay for you. However, now I have > thought about what you have said some more, I realize my comment above has > an important qualifier which I failed to state. Antialiasing must be off in > the postscript viewer (e.g., gv) to get good looking plots on the screen. Is > that the problem you refer to here? Try turning antialiasing off in the > postscript viewer to see whether the problem you are referring to goes away. > > Alan I had an error report the other day from a Windows user who has a very similar problem: on screen the picture looks fine, when saved as a PS file horizontal streaks appear. My first thought (I have not had a chance to analyse this yet) is that it has to do with an integer overflow: the horizontal lines coincide with items drawn on the righthand side of the picture, very near the border. One way to get around it might then be to use a larger margin on the righthand side when drawing via PS. Regards, Arjen |