home *** CD-ROM | disk | FTP | other *** search
- From: Jason L. Tibbitts III <honp9@menudo.uh.edu>
- Organization: Blob Shop Programmers
- Subject: REVIEW: Multiplot XLNd (beta)
- Followup-To: comp.sys.amiga.applications
- Keywords: application, scientific, data processing
- Reply-To: Markus Buchhorn <markus@mso.anu.edu.au>
- Followup-To: comp.sys.amiga.applications
-
- Multiplot XLNd (beta) is a quick-look plotting package, capable of
- producing publication quality plots. It's intuitive enough to just
- run with little instruction, and powerful enough for those wanting
- extra features. It's one I recommend to my co-workers around the
- observatory here. In short, an excellent product, and even better: PD
-
- -------
-
- I should add that I posted this review to the Amiga-scientific mailing
- list for discussion, and with the exception of the author, had no
- comments either way. Some of the comments made by Alan are included
- near the end [I don't think I misquoted you too much, Alan :-)].
- Furthermore - this is still a beta release, so no conclusions can be drawn
- regarding the final product. Note that the version has come a long way though
- (since at least FF#231), and keeps getting better, with more features.
-
- Multiplot XLN needs to be distinguished from Multiplot which is Tim
- Mooney's program which has evolved along diferent lines.
-
- ----------------------------------------------------------------------------
-
- Review of: Multiplot XLNd beta
- Authors : Alan Baxter, Tim Mooney
- Status : Freely distributable (subject to constraints - see documentation)
- Requires : WB 1.3 or higher (yes, 2.0 is possible, according to the Docs)
- 1/2M RAM.
-
- Runs from Hard Disk (quite well!), and runs from CLI or WorkBench. Data files
- can be saved having Multiplot as the tool for their icon.
-
- A loong time ago I tried a plotting package called Multiplot, I can't remember
- the version number. I didn't like it. It was chunky, clunky and uncomfortable
- to use. Recently however I saw an update notice with a whole bunch of
- fixes and new features. Being the sporting type, I decided to give it another
- go :-). I was more than pleasantly surprised. This is now a useful package,
- i.e. one I consider using in my work.
-
- MP is an x-y plotting package that reads in plain text files, containing
- columns of numbers representing your data + errors. It can also contain some
- keywords that tell MP how to plot the data, but the main use I feel is to just
- read in the data, then interactively clean up the presentation before printing
- it.
-
- It runs on an interlaced screen, with number of bitplanes and overscan
- optional settings. I don't have a flicker fixer, so interlace can be
- irritating - but the default colours aren't too bad, so I can live with it
- for the time being. Anyway, the colours are adjustable from within the program.
-
- Having loaded your data file, MP defaults to a 'draw each point as a box and
- connect the points' setting. Now is where the elegance of MP becomes evident.
- Click once on any point and it selects the data-set that point belongs to,
- highlighting it. You can have an unlimited number of distinct data-sets in MP.
- If you double-click on a data-set you get a requestor, which allows you to
- adjust everything about the way it is represented, point-type, size-of-points,
- line-type, colour, how the data is presented (only line,only points, both
- line/points, step, impulse) or to get rid of/hide a data-set away from the
- plot. Every time you finish with that requester, the plot is redrawn. Even my
- plots with >1200 points are redrawn very quickly.
-
- If you double click alongside the x or y axes (and you're not near one of
- the labels) you get an axis requestor. This allows you to change the length
- of the axis (min/max values) if the default is no good, invert the axes,
- change to log or linear scales (so lin/lin,log/lin,lin/log,log/log plots are
- all possible) and to lock the axes - which basically stops it changing the axes
- if you make further adjustments, like zooms etc. More on that later.
-
- You can select an individual point/set of points, as opposed to the whole
- data-set, and edit the points individually ('Hmmm, that 6 sigma point would
- look better hidden over here...':-) )
-
- Double-clicking above the plot gives you a requestor for the plot title,
- written in a fairly large font. This title is immovable, unlike almost
- any other piece of text on the plot. You can pick up axes labels,
- numeric labels, and move them or edit them. You can also add a label
- anywhere on the page by selecting a menu-item.
-
- This leads me to the menu-options. The easiest way to discuss these is
- to just read them off and briefly list/discuss the more interesting ones.
- Here is where the real power of MP is hidden, as opposed to the elegance :-)
-
- PROJECT:
- Save As: This allows you to save the plot in any of the following formats:
- ILBM, HPGL, Draw, mCAD, IntroCAD, PostScript, EPSF and a raw data
- file. I only use the PS options so I can't comment on the others.
- The PS is quite good, and happily read into Andrew Aylward's POST
- PostScript interpreter.
-
- Print Preview: for those of you with printers (unlike me :-( )
-
- Print Setup: A nice requester pops up, allowing you to change from
- Landscape to Portrait mode, to adjust the overall scale of the
- plot in %ile units. There's also a graphic representation
- of how much of the page is covered by the plot, which adjusts
- as you change the scaling/orientation. You can move this around
- to determine where on the page the plot will appear. Very Nice !
-
- EDIT:
- This interfaces MP with the clipboard. Cut/Paste/Undelete/Copy/Delete are
- all available.
-
- Add Text: What it says. Your string will appear somewhere on the page, and
- you can then pick it up and put it wherever you want it. You can
- do this at any stage.
-
- ACTIONS:
-
- Mouse Action: Select/Zoom/Slide
- The Mouse can be used in 3 ways. In select mode you can do
- all the stuff above. In Zoom, you can drag-select a region of
- the plot, which is then plotted with the same characteristics
- as the original plot. The axes adjust - unless you've locked
- them. The Slide mode = Pan mode. You can slide the plot around
- the plot box. The axes slide in this case -unless you've locked
- them.
-
- Axes locks can also be set via the menu here.
-
- OPTIONS:
- Crosshairs: Turns the cursor, in whatever action-mode, into a crosshair.
- Grid : Toggles: Draw a grid on the plot.
- Axes : Can be just x/y or complete box, or none. (One could do diagrams
- with this mode)
- Sign.fig. : Let's you limit the number of sign. figures used on numbers on
- axes and formulae.
- Errorbars : Toggles error bar drawing on and off. Note that error bars can
- now be asymmetric with this new release ! At this stage Y-dirn
- error-bars only, but I believe Errors in X will be supported
- in an upcoming version.
-
- FUNCTIONS:
- Sort Data Set : Sorts the data-set by x values.
- Smooth : Smooths the data by filtering or by interpolation
- Linear Fit : Fits a straight line in current coord system, i.e. takes
- lin/log axes into account to fit exponentials or whatever.
- Polynomial Fit: As above, but to higher orders.
-
- The equation of the fit is written into the right hand margin as a legend,
- along with a section of line representing it there. Both smoothing and fitting
- generate a new data set with points, so you can edit them the same way that you
- can edit your own data. You could smooth the data first, then fit a line to the
- equispaced points of the smoothed data-set.
-
-
- So, that covers in a very quick fashion, most of the major features of MP.
- It is very intuitive and quick to learn. The documentation is quite good,
- although once you get to know MP, I found that it could be organised a bit
- better.
-
- ---------------------------------------------------------------------------
- What follows is a list of things I would like to see/see fixed, I'm just
- intrigued by, or I can't see what I'm doing wrong. No particular order, just
- the order I came across them. I include here (in an edited form) some of
- Alan's comments via the ami-sci mailing list and also personal E-mail.
-
- - Line thickness: You can set point size, but not line thickness.
- [Alan: Not too dificult to implement. Never been previously requested. Can be
- added if others want.]
-
- - Line types: We need more ! Perhaps user definable ones ?
- [Alan: Restrained here by those available in HPGL.]
-
- - Adding a legend: This wasn't documented in the manual, but Alan pointed
- me in the right direction. Select a data-set in the usual-way, then
- select 'Add-Text' from the Menu.
-
- - Histograms: yet to come, according to the docs. The sooner the better !
- [Alan: Okay, okay!!]
-
- - The number of major tics (axis labels) is out by one in the requester
- I discussed this with Alan somewhat, and it appears to be a choice-of-
- -nomenclature problem only. He'll look into it.
-
- - Freehand drawing of straight lines, arrows and similar. This is seen
- quite often on scientific plots, to allow points/lines to be clearly
- labelled and also for baselines/division lines.
- [Alan: I've been thinking about that sort of thing, also freehand addition of
- spline curves.]
-
- - If eqn of fit is too long for the legend, it never tells you the eqn..
- [Alan: adjust the number of sign.figures with the menu-option]
-
- - If there's only one data-set, why prompt 'no set selected' ? Should default.
- [Alan: To keep the user-interface consistant, regardless of number of
- data-sets.] Ok - I can agree with that.
-
- - The Aspect ratio of the plot changes as you add titles/labels/legends.
- If you start out with a square plot, it mightn't be square at print-time.
- I'd rather have this setable by the user - something like a rubber-box ?
-
- [Alan: The way it is now, the plot fills the maximum number of pixels available.
- It has to shrink to include other things like axis labels, etc. Obviously
- the code is virtually in place for "rubber box" bounding. Not there because
- noone's asked for it before. Please note that the "maximum pixel" concept
- deliberately differs from the Mac "tiny poky picky in the middle of the
- screen" concept.] I agree with that - the plot fills as much of the screen as
- is reasonably possible. Very nice to look at - no neck-strain :-)
-
- - The title is immovable - sometimes it is useful to have it move.
- [Alan: On its way...]
-
- - The sideways y-label problem. Alan has had this problem for a long time.
- The y-axis label has to be written with horizontal text, in a single
- column of characters. If anyone knows how to rotate Amiga fonts on
- screen, please let him know .... On the printout they come out Ok.
-
- - Font additions: subscripts/superscripts and Greek characters are needed.
- [Alan: Yes. This is getting to be a problem. I will probably have to create
- a special Multiplot font for the Fonts: directory which coincides with
- the HPGL output, and maintains font changes in parallel with the two
- PLT fonts.]
-
- - 0.0 comes out as 1e-17 or similar on a fairly regular basis. Due to
- personal aesthetics, this can't always be fixed by using significant
- figures. I've discussed this with Alan, and at this stage appears to be
- a pain to fix. For now, once you've finished all the scaling, just edit
- the numeric label (trivial) and lock the axes. May be fixed in an upcoming
- version...
-
- - Reading new data sets in from a file - At this stage, the only way I can
- see that multiple data sets can be plotted is to have them all in one file
- (with flags separating them) or by shuffling them onto the clipboard and
- back again. It'd be nicer if the file requester had a 'data-set number'
- option..
- [Alan: Fair enough.]
-
- - It is sometimes useful to have an 'upper limit' type of error bar, i.e.
- a dot with an arrow. This was a new one to Alan, and he said he'd look
- into it - but not too soon :-) (Other features come first)
-
- - If thou requests the opening of a new file by accident, thou cannotst
- cancel this - start again from the beginning. Alan doesn't like (read: hates)
- the concept of 'Did You Really Want Me To Do That?' requesters, but in this
- case he may add one.
-
- - I've found at least once that the y axis labels on a shrunken plot were
- geometrically displaced from where they should be..
- [Alan: found and fixed]
-
- - If you gratuitously lock the axes before putting a label on them, the
- axes occassionally misbehave (text in the middle of the numbers, the labels
- going past the end of the axes)
-
- [Alan: Hmm... If you take a chain saw and wave it through your leg...
- Powerful features can be misused. I considered but decided against a
- requester reminding the user of the locks every time the plot was redrawn.]
-
- ------------------------------------------------------------------------------
-
- Some of the above are minor nuisances only, some are already fixed or will be
- in an upcoming version. At this stage, I'd rate MP as 75% useful for my
- purposes. With the above changed/fixed I'd go up to 85%. (mind you -
- 90% = essentially perfect in my book, 100% I've never seen)
-
- I could suggest further features (for future versions?) . These include
- (i) 3D plots
- (ii) Histograms
- (iii) Statistical analysis
- (iv) Doing multiple plots at once and arranging them on a page
-
- however, these are fairly major (:-) ) This is something I'd expect to
- see in a commercial version.
-
- [Alan: (i) No way, (ii) Yes, soon, (iii) may provide a separate utility for
- this, and (iv)... well, Multiplot XLN(future) will allow for multiple pages of
- plots in memory, if not necessarily on display.] I was thinking more of the
- presentation of multiple plots on a page, via the Print Setup. Alan is
- thinking about this, but first reaction is 'too hard... unless you pay me :-)'
-
- As you can see from the above, the program has many features for the
- power-user, and is intuitive enough for beginners. Alan is a responsive
- author, quite happy to discuss features/problems.
-
- This is an excellent plotting package, in terms of intuitiveness and what
- it can do. Of the packages I've seen, this is the one giving most bang/effort.
- Other packages require writing scripts or programmes to produce plots. They
- may be more powerful in the end, but for quick-look problems, and quite
- respectable output (publication quality) it would be hard to go past
- Multiplot. Congrats Alan and Tim.
-
-
- ===============================================================================
- Markus Buchhorn /// | This space
- Mt Stromlo and Siding Spring Observatories, Canberra /// |
- PMB Weston Ck. P.O. A.C.T. 2611, Australia \\\/// | intentionally
- markus@mso.anu.edu.au -or- markus@merlin.anu.edu.au \XX/ | left blank
- -------------------------------------------------------------------------------
- Phone donations: AUS-6-249-0283 Flames: alt.dev.null Disclaimer: standard
- ===============================================================================
-
-