History

pass created plot to plot_audio/spec instead of outplot/extension, minor fixes pass created plot to plot_audio/spec instead of outplot/extension, minor fixes

Paul Brossier committed 20 years ago

Commit e5cc1ea1 parent 90bcdaa3 files · +26 −20Browse files

Showing the changes to python (3 of 3 files). Show all

Unified · Split

3 files
  1. python/aubio/gnuplot.py +22 −15
  2. python/aubioplot-audio +2 −4
  3. python/aubioplot-spec +2 −1
python/aubio/gnuplot.py+22−15
@@ -45,14 +45,13 @@ def audio_to_array(filename): · 44 unmodified lines
4545 time = numarray.arange(len(data))*framestep
4646 return time,data
4747
48−def plot_audio(filenames, outplot='', extension='', start=0, end=None, noaxis=None,xsize=1.,ysize=1.):
49− g = gnuplot_create(outplot, extension)
48+def plot_audio(filenames, g, start=0, end=None, noaxis=None,xsize=1.,ysize=1.):
5049 d = []
5150 todraw = len(filenames)
5251 xorig = 0.
5352 xratio = 1./todraw
54− g.gnuplot('set size %f,%f;' % (xsize,ysize) )
55− g.gnuplot('set multiplot;')
53+ #g('set rmargin 7')
54+ g('set multiplot;')
5655 while (len(filenames)):
5756 time,data = audio_to_array(filenames.pop(0))
5857 if not noaxis and todraw==1:
@@ -63,14 +62,14 @@ def plot_audio(filenames, outplot='', extension='', start=0, end=None, noaxis=No · 4 unmodified lines
6362 g.xlabel('Time (s)')
6463 g.ylabel('Amplitude')
6564 d.append(make_audio_plot(time,data))
66− g.gnuplot('set size %f,%f;' % (xsize*xratio,ysize) )
67− g.gnuplot('set origin %f,0.;' % (xorig) )
68− g.gnuplot('set style data lines; \
65+ g('set size %f,%f;' % (xsize*xratio,ysize) )
66+ g('set origin %f,0.;' % (xorig) )
67+ g('set style data lines; \
6968 set yrange [-1.:1.]; \
7069 set xrange [0:%f]' % time[-1])
7170 g.plot(d.pop(0))
7271 xorig += xsize*xratio
73− g.gnuplot('unset multiplot;')
72+ g('unset multiplot;')
7473
7574 def audio_to_spec(filename,minf = 0, maxf = 0, lowthres = -20.,
7675 bufsize= 8192, hopsize = 1024):
@@ -116,9 +115,8 @@ def audio_to_spec(filename,minf = 0, maxf = 0, lowthres = -20., · 39 unmodified lines
116115 assert len(data[0]) == len(freq)
117116 return data,time,freq
118117
119−def plot_spec(filename, outplot='',extension='', fileout=None, start=0, end=None, noaxis=None,log=1, minf=0, maxf= 0, xsize = 1., ysize = 1.,bufsize=8192, hopsize=1024):
118+def plot_spec(filename, g, start=0, end=None, noaxis=None,log=1, minf=0, maxf= 0, xsize = 1., ysize = 1.,bufsize=8192, hopsize=1024):
120119 import Gnuplot
121− g = gnuplot_create(outplot,extension)
122120 data,time,freq = audio_to_spec(filename,minf=minf,maxf=maxf,bufsize=bufsize,hopsize=hopsize)
123121 xorig = 0.
124122 if not noaxis:
@@ -127,16 +125,24 @@ def plot_spec(filename, outplot='',extension='', fileout=None, start=0, end=None · 2 unmodified lines
127125 g.xlabel('Time (ms)')
128126 else:
129127 g.xlabel('Time (s)')
130− g.ylabel('Frequency (Hz)')
131− g('set size %f,%f' % (xsize, ysize))
128+ if xsize < 0.5 and not log and max(time) > 1.:
129+ freq = [f/1000. for f in freq]
130+ minf /= 1000.
131+ maxf /= 1000.
132+ g.ylabel('Frequency (kHz)')
133+ else:
134+ g.ylabel('Frequency (Hz)')
132135 g('set pm3d map')
133136 g('set palette rgbformulae -25,-24,-32')
137+ #g('set lmargin 4')
138+ g('set cbtics 20')
134139 #g('set colorbox horizontal')
135140 g('set xrange [0.:%f]' % time[-1])
136− g('set yrange [%f:%f]' % (minf,maxf))
137141 if log:
138− g('set yrange [%f:%f]' % (max(10,minf),maxf))
139142 g('set log y')
143+ g('set yrange [%f:%f]' % (max(10,minf),maxf))
144+ else:
145+ g('set yrange [%f:%f]' % (minf,maxf))
140146 g.splot(Gnuplot.GridData(data,time,freq, binary=1))
141147 #xorig += 1./todraw
142148
@@ -175,7 +181,7 @@ def gnuplot_init(outplot,debug=0,persist=1): · 32 unmodified lines
175181 g('set output \'%s\'' % outplot)
176182 return g
177183
178−def gnuplot_create(outplot='',extension='',debug=0,persist=1):
184+def gnuplot_create(outplot='',extension='',debug=0,persist=1, xsize=1., ysize=1.):
179185 import Gnuplot
180186 g = Gnuplot.Gnuplot(debug=debug, persist=persist)
181187 if not extension or not outplot: return g
@@ -188,4 +194,5 @@ def gnuplot_create(outplot='',extension='',debug=0,persist=1): · 6 unmodified lines
188194 g('set terminal %s' % extension)
189195 if outplot != "stdout":
190196 g('set output \'%s%s\'' % (outplot,ext))
197+ g('set size %f,%f' % (xsize, ysize))
191198 return g
python/aubioplot-audio+2−4
@@ -34,9 +34,7 @@ else: · 33 unmodified lines
3434 extension = ''
3535 outplot = None
3636
37−aubio.gnuplot.plot_audio(options.filename.split(','),
38− extension = extension,
39− outplot = outplot,
40−g,
37+g = aubio.gnuplot.gnuplot_create(outplot,extension,xsize=options.xsize, ysize=options.xsize)
38+aubio.gnuplot.plot_audio(options.filename.split(','), g,
4139 xsize=options.xsize,
4240 ysize=options.ysize)
python/aubioplot-spec+2−1
@@ -55,7 +55,8 @@ else: · 54 unmodified lines
5555 extension = ''
5656 outplot = None
5757
58−plot_spec(filename, outplot=outplot, extension=extension, log=options.log,
58+g = gnuplot_create(outplot,extension,xsize=options.xsize, ysize=options.ysize)
59+plot_spec(filename, g, log=options.log,
5960 maxf = options.maxf, minf = options.minf,
6061 xsize = options.xsize, ysize = options.ysize,
6162 bufsize = options.bufsize, hopsize = options.hopsize)

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t