Beefy Boxes and Bandwidth Generously Provided by pair Networks
The stupid question is the question not asked

Some Pure-perl SVG applications

by hackmare (Pilgrim)
on Apr 24, 2002 at 09:16 UTC ( #161550=perlmeditation: print w/replies, xml ) Need Help??

Hi all,

I've cooked up set of demos of the neat applications of Perl to the SVG application concept.

SVG is starting to make some serious strides in the client-side (browser) side of things and is now embedded in most Adobe products, most importantly in the new Acrobat viewer. This is opening up SVG as a potential replacement for HTML for clientside interfaces.

I've been working on some pure-perl generation of SVG application interfaces and here are some of my (fairly lame) preliminary results. You need the Adobe SVG plugin for these. I have only tested the output with version 3.0, but 2.0 might work as well.

1/ Dynamic Graphs of live streaming yahoo quotes (only works when the markets are open). This demo handles 50,000 points before memory becomes an issue.

2/ Dynamic Graphs from random data. Less slick than the above graph, but you get the point. The bottom stream has 4 independant dimensions. (this demo is a bit of a ram hog after a while) By the way, notice that the application it is embedded within is also pure-perl.

3/ Live real-time, 2-way interaction with a database without refreshing the screen (This is fairly important functionality because it allows complex applications to retrieve popups and pulldowns from a server's database without refreshing the entire page. Since the connection to the server is already in place, the lag is minimal). Select a region by clicking and dragging the mouse, and circles pop up with pos, colour, and size retrieved real-time from the server's mysql instance.

Note: (This demo is being hosted on a $200/year shared server, and still is fairly responsive).

And finally, here is a report I cooked up discussing the performance of the use of the modified-DOM approach used in to generate SVG (or any XML for that matter). Summary: generates 12000 nodes per second on a run-of-the-mill 500MHz x 256K linux box under mod_perl.

I am planning to give a paper about this functionality and the module at yapc::europe in Munich and at the SVG::Open conference in Zurich.

There are tutorials and other case studies about at thePerl SVG server


Replies are listed 'Best First'.
Re: Some Pure-perl SVG applications
by klsh (Initiate) on Apr 24, 2002 at 22:30 UTC

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlmeditation [id://161550]
Approved by broquaint
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others wandering the Monastery: (2)
As of 2023-01-29 19:10 GMT
Find Nodes?
    Voting Booth?

    No recent polls found