/jsroot

JavaScript ROOT

Primary LanguageJavaScriptMIT LicenseMIT

JavaScript ROOT

JavaScript ROOT provides interactive ROOT-like graphics in the web browsers and in node.js. Data can be read and displayed from ROOT binary and JSON files. JSROOT implements user interface for THttpServer class.

Examples

Color draw for TH2 2-dimensional TTree::Draw with cut options Several variants of THStack drawing Drawing of TGeo model superimposed with tracks and hits

In web browser

...
   <body>
      <div id="drawing" style="width:800px; height:600px"></div>
   </body>
   <script type='module'>
      import { openFile, draw } from 'https://root.cern/js/latest/modules/main.mjs';
      let file = await openFile("https://root.cern/js/files/hsimple.root");
      let obj = await file.readObject("hpxpy;1");
      draw("drawing", obj, "colz");
   </script>
...

In node.js

import { openFile, makeSVG } from "jsroot";
import { writeFileSync } from "fs";
let file = await openFile("https://root.cern/js/files/hsimple.root");
let obj = await file.readObject("hpxpy;1");
let svg = await makeSVG({ object: obj, option: "lego2,pal50", width: 1200, height: 800 });
writeFileSync("lego2.svg", svg);

More examples

Supported classes/options

API examples

Install

npm install jsroot

Documentation

Tutorial

THttpServer

Changelog

Reference API

Links

https://root.cern/js/

https://jsroot.gsi.de