Image:Chebyshev response.png

From Wikipedia, the free encyclopedia

[edit] Instructions

See Wikipedia graph-making tips.

This image, as well as the following text, is derived from Image:Butterworth_response.png.

Generated in gnuplot with the following script (save as cheby.plt and then open in gnuplot):

set samples 2001
set terminal postscript enhanced landscape color lw 2 "Times-Roman" 20
set output "cheby.ps"

# Butterworth amplitude response and decibel calculation.  n is the order, which is 4 in this image.
eps = 1
G(w,n) = 1 / (sqrt(1 + (eps*cos(n*acos(w)))**2))
dB(x) = 20 * log10(abs(x))

# Gridlines
set grid

# Set x axis to logarithmic scale
set logscale x 10

# Set range of x and y axes
set xrange [0.1:10]
set yrange [-60:10]

# Create x-axis tic marks once per decade (every multiple of 10)
set xtics 10

# Use 10 x-axis minor divisions per major division
set mxtics 10

# Axis labels
set xlabel "Angular frequency (rad/s)"
set ylabel "Gain (dB)"

# No need for a key
set nokey #0.1,-25

# Frequency response's line plotting style
set style line 1 lt 1 lw 2

# Draw a separator between passband and stopband and label them
set style line 2 lt 2 lw 1 
set style arrow 2 nohead ls 2
set arrow 3 from 1,-60 to 1,10 as 2

# Label coordinates are relative to the graph window, not to the function, centered at the 
1/4 and 3/4 width points
set label 1 "Passband" at graph 0.25, graph 0.1 c
set label 2 "Stopband" at graph 0.85, graph 0.1 c

# Asymptote lines and slope lines are the same "arrow" style
set style line 3 lt 3 lw 1
set style arrow 3 nohead ls 3

# -3 dB arrow style and arrow
set style line 4 lt 4 lw 1
set style arrow 4 head filled size screen 0.02,15,45 ls 4
set arrow 4 from 2,3 to 1,0 as 4

# "Cutoff frequency" label uses same coordinates as the function
set label 3 "Cutoff frequency" at 2,4 l

# Plot the filter response
plot \
     dB(G(x,4)) ls 1  title "4th-order response"

Then I opened the cheby.ps file in a text editor to edit the line colors and linestyles, as per this description. This avoids needing to open in proprietary software, and really isn't that difficult (especially if you don't know the commands in the proprietary software either).  ;-) Identify the lines easily by their color (the arrow is currently magenta and I want it to be black. Ah, there is the entry with 1 0 1, red + blue = magenta) or by using the gnuplot linestyle−1. (For instance, gnuplot's linestyle 3 corresponds to the ps file's /LT2.) Then you can edit the colors and dashes by hand. I changed the original:

/LT0 { PL [] 1 0 0 DL } def
/LT1 { PL [4 dl 2 dl] 0 1 0 DL } def
/LT2 { PL [2 dl 3 dl] 0 0 1 DL } def
/LT3 { PL [1 dl 1.5 dl] 1 0 1 DL } def

into this:

/LT0 { PL [] 0 0 1 DL } def
/LT1 { PL [4 dl 2 dl] 0.5 0.5 0.5 DL } def
/LT2 { PL [6 dl 3 dl] 0.3 0.3 1 DL } def
/LT3 { PL [] 0 0 0 DL } def

Then I displayed the cheby.ps using the Mac Preview App, and used SnapNDrag to save the useful part of the image to a file.

Created by Pfalstad from Image:Butterworth_response.png.

2006-08-20 - Added and labelled the minimum passband line and fixed horizontal label.PAR 21:18, 20 August 2006 (UTC)

File history

Click on a date/time to view the file as it appeared at that time.

Date/TimeDimensionsUserComment
current21:16, 20 August 2006732×527 (34 KB)PAR (Talk | contribs) (Added and labelled the minimum passband line and fixed horizontal axis label.)
04:27, 22 August 2005732×527 (29 KB)Pfalstad (Talk | contribs) ({{SelfBSA}})

The following pages on the English Wikipedia link to this file (pages on other projects are not listed):