A list for the developers of CellML tools

Text archives Help


[cellml-dev] SVG for PCEnv graphs


Chronological Thread 
  • From: ak.miller at auckland.ac.nz (Andrew Miller)
  • Subject: [cellml-dev] SVG for PCEnv graphs
  • Date: Wed, 28 May 2008 09:56:01 +1200

Randall Britten wrote:
>
> Hi
>
> Just an idea: perhaps we could change the way we create graphs, such
> that we create SVG, and then let the Mozilla SVG rendering do the rest.
>
> That way we don?t have to ?reinvent the wheel?, plus there are
> benefits, such as the ability to save the graphs.
>
> (My guess is that this approach has probably already been considered,
> so I won?t be surprised if the reply is a reference to some previous
> archive.)
>
Hi Randall,

This was discussed at length around February and March 2006 when we were
deciding on this sort of thing originally. See for example
http://www.cellml.org/meeting_minutes/meeting-minutes-for-2006/23.3.2006/
(unfortunately, we don't seem to have minutes from the 16th March 2006).

The problem with using SVG is that we need to create an in-memory DOM
representation of ever single point on the graph - we couldn't get good
space or time performance from this, and canvas is much more efficient
for this.

Quite aside from re-inventing the wheel, the canvas API is also a much
more natural API for writing a graph drawing program - we would actually
be doing more wheel reinventing if we were to use SVG (unless we could
find an existing library with good enough performance, which is unlikely
given that data points currently don't go through Javascript at all -
the Javascript just tells the DataCollector, which is C++ code, what
data to plot and where).

Best regards,
Andrew

> Regards,
>
> Randall
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> cellml-tools-developers mailing list
> cellml-tools-developers at cellml.org
> http://www.cellml.org/mailman/listinfo/cellml-tools-developers
>





Archive powered by MHonArc 2.6.18.

Top of page