
from jhplot  import *
from java.util import Random
from java.awt  import Color
 
c1 = HPlot("Canvas",600,400)
c1.setNameX("X")
c1.setNameY("Y")
c1.visible(1)
c1.setAutoRange()
 
p1 = P0D("Input data")
rand = Random()
for i in range(100):
          x=10*rand.nextGaussian()
          p1.add(x)
print p1.toString()
 
h1=p1.getH1D(50,-10,10)
c1.draw(h1)
 
#########  do wavelets
from jsci.maths import *
from jsci.maths.wavelet import *
from jsci.maths.wavelet.daubechies2 import *
 
ondelette = Daubechies2()
signal =Signal(p1.getArray())
 
signal.setFilter(ondelette) # transform
level = 1 # for some level int
sCoef = signal.fwt(level) # get coefficients from Fast Wavelet Transform
p2=P0D("Coefs0",sCoef.getCoefs()[0])
p3=P0D("Coefs1",sCoef.getCoefs()[1])
signalBack=P0D("Signal back", sCoef.rebuildSignal(ondelette).evaluate(0))
 
h3=signalBack.getH1D(50,-10,10) #  get the signal back
h3.setColor(Color.red)
c1.draw(h3)
