Team:UC Davis/KO3D

From 2011.igem.org

Revision as of 02:49, 29 October 2011 by Keegano (Talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Our Sponsors

Start a Family

Got a favorite BioBrick? Check our our process for expanding basic parts into part families.

Criteria

View our judging criteria for iGEM 2011 here.

KO3D: A Javascript Plotting Library

What is it?

KO3D ("Kay-Ode") is a fast, robust 3D plotting library written entirely in Javascript. It allows anyone (even you!) to employ interactive 3D plots of arbitrary data without requiring visitors to download any special plugins. The library will run in most modern browsers and operating systems - including most smartphones! You can see an example of it here displaying 3D characterization data for our LacI promoter mutants.

How does it work?

KO3D utilizes the excellent 3D graphics library three.js by mrdoob to handle the graphics rendering legwork. KO3D takes your data points, turns them into colored triangles according to your choice of colormap, and uses the three.js library to plot them, along with axes, tickmarks, an optional grid, colored highlighting (for distinguishing between multiple datasets plotted on the same graph), and more! All of this happens in a javascript library that is fast and lightweight - currently less than 40 KB.

Why is it better?

In addition to all of the previously-listed features, KO3D sits on your webpage without using any CPU time; unless you're interacting with the graph directly, it doesn't slow down the page at all! Unlike its Flash or Java-based counterparts, a single webpage could contain dozens of generated KO3D plots, and the page would behave just as smoothly as if the plots were static images. It supports the latest versions of all the major browsers, and doesn't require any plugins.

Great! Where can I get it?

We are in the process of cleaning up the code before releasing the library for general use. You can check out our progress on the KO3D github page. In the meantime, check out the demo of the library on our LacI data page. Stay tuned!