making web-based graphs


Welcome     Gallery     Handbook


Manual page for making_web-based_graphs(PL)

Web-based graphs

This page contains notes related to use of ploticus to produce data displays that are viewable on web pages. There are a number of web sites that are using ploticus .

Ploticus can generate the following types of graphics that web browsers can display: PNG, JPEG, WBMP, pseudo-GIF, and SVG. Some of these types are more compact than others (smaller is faster). Here's a comparison, done on gallery example stock:

PNG         2978 bytes
SVGZ        3918 bytes
pseudo-GIF 14874 bytes 
SVG        17743 bytes
JPEG       27006 bytes

As of version 2.02 ploticus can also generate HTML clickmaps to accompany images.

PNG, JPEG, WBMP, and pseudo-GIFs are generated using the GD image generation library from boutell.com . Ploticus is bundled with portions of GD 1.3 (pseudo-GIF) and GD 1.6 (PNG images). Of, if you prefer, ploticus may be built by linking it with your own copy of GD 1.8.4 or higher, for PNG, PJEG, WBMP, and FreeType2 support (see GD18 in the Makefile).

SVG is a relatively new vector-based format that looks good. Browsers display SVG via a plug-in. Ploticus (version 2.01 or later, all builds) can produce SVG graphics.


Creating PNG

To create a PNG image, use ploticus with the -png option.

To incorporate a PNG image into an HTML web page, use the HTML construct: <img src="mygraph.png">

PNG is a newer image format that has superior compression (hence the images are smaller and faster to transmit). The images can be viewed using the newer versions of web browsers (Netscape 4.04 or higher, Explorer 4.0 or higher) and image viewing tools such as xv. To see if your current web browser can display PNG, try this page. See also the PNG home page


Creating pseudo-GIF

To create pseudo-GIF (not available in the Debian package), use ploticus with the -gif option.

To incorporate a GIF image into an HTML web page, use the HTML construct: <img src="mygraph.gif">

GIF format has been around for a long while, is fairly universal, and can be viewed on any graphical web browser or image viewing tool. Ploticus does not read GIF files. Ploticus writes run-length-encoded (RLE) GIF files. Our understanding is that these RLE GIF files do not use patented LZW compression. The RLE GIF images that ploticus produces are viewable via any graphical web browser or image viewer that supports GIF.

More on GIF LZW patent and licensing issues


Creating SVG

This is discussed here


Transparent background

Images may be created with 'transparent' background by setting the background color to transparent. This allows the ploticus graphs to be "overlayed" against the existing background color of the web page.




Web page example

Here is an example HTML page that is viewable using any web browser:

<html>
<center>
Here is an image.
<img src="lineplot1.gif">
</html>

Suppose the above is in a file called /home/steve/firsttry.html. If you don't have a web server running, you can view the file by entering the following URL into your web browser: file:///home/steve/firsttry.html
This assumes that your web browser is running on the same computer that the HTML file is located upon.

Clickmap support

As of version 2.02 ploticus can also generate HTML clickmaps to accompany images.


CGI control

As of version 2.00, ploticus may be directly invoked as a CGI program . Another way to use ploticus via CGI is to 1) generate a unique temp file name; 2) invoke ploticus via shell or system() and build a PNG or GIF file using the unique name; 3) reference that file in an <IMG> tag; 4) clean up temp PNG / GIF files regularly using a find command run by cron. In my applications I use a static ploticus script with several @variables that I pass to it; it would also be possible to dynamically build a ploticus script (as step 1a above).

A perl script which implements a web interface to ploticus was contributed by Tom McClure. See also Controlling Ploticus from Other Programs .


Image import

Ploticus includes the capability to import PNG images into graphs, and can use small images as scatterplot points and symbols. GIF import is not supported. Ploticus can also be used to reduce, enlarge, and crop images; see the gallery example pngresize


Thumbnail and button images

Thumbnail images (tiny renditions of a plot for icon or selection uses) may be rendered using the -scale command line option. For example: -scale 0.15. Very small text is rendered as lines.

Ploticus can also be used to make simple buttons for web pages. See the gallery example button

Example HTML code for making a thumbnail or button that will take a user to a new page when clicked upon:

<a href="newpage.html"><img src="mybutton.gif"></a>



data display engine  
Copyright Steve Grubb


Markup created by unroff 1.0,    February 23, 2002.