Re: wavelet
- To: mathgroup at smc.vnet.net
- Subject: [mg104992] Re: wavelet
- From: "Sjoerd C. de Vries" <sjoerd.c.devries at gmail.com>
- Date: Tue, 17 Nov 2009 05:13:30 -0500 (EST)
- References: <hdoms7$95l$1@smc.vnet.net>
I don't have the wavelet package so I can't test it, but might it have something to do with your ImageSize -> {500, 400} instruction? If you expect to see more than 500 data points in a graph of only 500 wide you will be disappointed. Cheers -- Sjoerd PS your example is full of strange codes. Next time make sure you paste only ASCII code On Nov 15, 12:58 pm, clansa <dauphines... at gmail.com> wrote: > With the package Wavelet > I have made this little program that is OK with 256 or 512 data, but > the graphics (PlotCoefficients, and ListPlot of the cumulative > energy don't work with 1024 data and more. > > (*D=E9composition en ondelettes*) > (*La s=E9rie =E9tudi=E9e doit avoir 32, 64, \ > 128, 256, 512, 1024,... valeurs*) > (*Importation des donn=E9es*) > \ > ClearAll["Global`*"] > d = Import[SystemDialogInput["FileOpen"]]; > d = Flatten[d]; > Print["longueur de la s=E9rie = ", n1 = Length[d]] > > (*Choisir ordre du filtre et niveau de d=E9composition*) > \ > Needs["Wavelets`Wavelets`"] > a = N[ChoiceDialog[ > "Choisir l'ordre du filtre", {1 -> "1", 2 -> "2", 3 -> "3", > 4 -> "4", 5 -> "5", 6 -> "6", 7 -> "7"}]]; > a = ToExpression[a]; > ab = N[ChoiceDialog[ > "Choisir le niveau de d=E9composition maximum au-dela de 2", {3= -> > "3", 4 -> "4", 5 -> "5", 6 -> "6", 7 -> "7"}]]; > ab = ToExpression[ab]; > > (*Il faut entrer le nom du filtre pour calculer les coefficients \ > d'ondelettes et de multiresolution, Daubechies par d=E9faut*) > > d2 = DaubechiesFilter[a, 25]; > cv = N[WaveletTransform[d, d2, ab], 25]; > Dimensions[cv]; > Length /@ cv > Print[] > Print["Coefficients d'ondelettes = "]; > > ListPlot[cv, ImageSize -> {500, 400}] > > PlotCoefficients[cv, Frame -> True] > > (*=E9tude de l'=E9nergie absolue cumul=E9e et de l'=E9nergie rela= tive cumul= > =E9e > \ > pour tous les niveaux*) > Print[] > Print[] > et = CumulativeEnergy[cv] // N; > e = N[et/Flatten[cv].Flatten[cv]]; > ListPlot[et, ImageSize -> {500, 400}, PlotRange -> All, > Joined -> True, > PlotLabel -> "=E9nergie totale absolue cumul=E9e"] ListPlot[e, > ImageSize -> {500, 400}, PlotRange -> All, Joined -> True, > PlotLabel -> "=E9nergie totale relative cumul=E9e"] > > (*Calculs statistiques simples sur les coefficients d'ondelettes*) > \ > Print[] > Print["Entropie des coefficients d'ondelette par niveau "]; > entropcv = Table[Entropy[cv[[n1]]], {n1, 1, ab + 1}] // N