from java.awt import Color
from jhplot import HPlot
from jhplot import H1D
from hep.io.root import *;
from hep.io.root.interfaces import *;
from java.io import IOException
# location of ROOT file
file=SystemDir+fSep+"macros"+fSep+"examples"+fSep+"data"+fSep+"Example.root"
rfr = RootFileReader(file)
print "number of histograms=",rfr.nKeys()
print "ROOT version=",rfr.getVersion()
key = rfr.getKey("mainHistogram")
his1 = key.getObject()
h1 = H1D(his1)
main = rfr.getKey("mainHistogram").getObject()
total = rfr.getKey("totalHistogram").getObject()
s1 = rfr.getKey("s1Histogram").getObject()
s2 = rfr.getKey("s2Histogram").getObject()
# convert usual histograms
h1 = H1D(main)
h2 = H1D(total)
h3 = H1D(s1)
h4 = H1D(s2)
# create canvas 1x1
c1 = HPlot("Canvas",600,400,0.12,1, 1)
c1.gTitle("Show ROOT histograms from Example.root")
c1.visible(1)
c1.setRange(0, -4, 4)
# set autorange for Y
c1.setAutoRange(1,1)
h1.setColor(Color.blue)
c1.draw(h1)
h2.setColor(Color.red)
c1.draw(h2)
h3.setStyle("p")
h3.setDrawLine(0)
h3.setColor(Color.green)
c1.draw(h3)
h4.setFill(1)
h4.setPenWidthErr(2);
h4.fillColorTransparency(0.5)
h4.fillColor(Color.red)
c1.draw(h4)
c1.setNameX("Xaxis")
c1.setNameY("Yaxis")
c1.setName("Canvas title")
c1.update()
# export to some image (png,eps,pdf,jpeg...)
c1.export(Editor.DocMasterName()+".png");
# jHepWork @S.Chekanov