Sporadic Guppi Update - March 8, 2000




I've made a lot of progress on Guppi since I last reported to the
list.  Here is a quick update:

------------------------------------------------------------------------------

(1) Guppi at GUADEC

I'm going to be at the Gnome Users and Developers European Conference
in Paris on the 16th, 17th, and 18th of this month.  If any Guppi
enthusiasts are going to be there, track me down and I'll buy you a
beer.  


(2) Scatter Plot Optimizations

I've made many, many optimizations to the scatter plot drawing
routines and other associated code.  As a result, the navigating in a
plot is now significantly faster.  On my 400mhz P2, panning a scatter
plot of 1000 points is fluid and flicker-free.  Panning 10000 points
is a bit jerky, but not too painful.

I've also a drag tool that can be used to grab and move individual
points. 


(3) Added Linear Regression Plug-in

I've implemented a new plot plug-in for linear regression: given x-
and y-data, it performs simple linear regression and draws the
regression line.

An accompanying window can show a bunch of statistics related to the
regression calculation: the model coefficients (with standard errors,
t-values and p-values), model and residual sums of squares, R-square,
and associated F- and p-values.

A feature that is probably more entertaining than useful, but still
cool: if you drag a point in the scatter plot, the regression line
shifts and the stats update interactively.

To get all of this to work properly has required a lot of enhancements
to the core plotting code.  The scatter plot and the regression line
plug-ins are totally independent: neither one knows anything about the
other, and all communication between them is via generic mechanisms
provided by the common base class.  For example, changing the data
sets used by one immediately changes the data used by the other.
Zooming or panning one item automatically performs the same action in
the other.

This is how Guppi will eventually build up complex plots: by
"stacking" multiple plot items whose data and/or navigation functions
have been connected together. 


(4) Merged in Statistical Libraries

I took a batch of code that use to be in Goose (a previous experiment
with building a stats library in C++) and moved it into Guppi.

There is a now a special functions library (for calculating things
like points on the cdf of the t-distribution...) and a general
statistics library.  The stats library currently just has code for
simple linear regression, which is used by regression plug-in.
I'm planning to add more complex types of curve fitting, as well as a
full complement of descriptive statistics, in the near future.

------------------------------------------------------------------------------

Of course, there has also been a boatload of just general debugging.
IMHO, Guppi is starting to approach the point where it isn't totally
inconceivable that it might someday actually be suitable for real
work. 

I'm planning on making a new release (either 0.34.3 or 0.35.1,
depending on what kind of mood I'm in) before I leave for Paris next
week --- I'm aiming for Friday or Saturday.  Stay tuned!

-JT


-- 
GNU/Linux: Free your mind and your OS will follow.



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]