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 SVG.pm to generate SVG (or any XML for that matter). Summary: SVG.pm 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 SVG.pm module at yapc::europe in Munich and at the SVG::Open conference in Zurich.

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

Hackmare.


In reply to Some Pure-perl SVG applications by hackmare

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.