I wrote a small script that plot a few graphs from fcf files:

The script is in alpha stage with some improvements needed. I do not store the fcf/cif file on the server. However, the eps/png/pdf generated files are stored in a temp folder not publicly accessible.

It’s written in pure php. The original script was in python but I ported it to php because of the poor perfomance of the cgi interface on Debroglie. I also have an opcode cache for php, so it’s much faster.

About the html part, the graphs are rendered with flot. Flot is a plotting library using canvas. I tweaked it a little bit so it gives better performance with the thousands of data points that requires the graphs. Canvas is part of HTML 5 so do not expect any support in Internet explorer. The script is using a compatibility layer called excanvas for IE but it is extremely slow…

Everything is not rendered in canvas, so export of the graph is not possible directly. For this purpose I am generating a picture from the server with gnuplot. There is also a CSV export of the coordinates.

The graphs are interactive, you can peak a reflection to show all the variables, modify the weights and filter the reflections.

Almost everything is done via javascript and the script heavily depends on jquery.

The sources are here : Anafcfweb svn.


Example with the normal probability plot

Leave a Reply