Annotation of OpenXM_contrib/gnuplot/demo/prob2.dem, Revision 1.1.1.2
1.1 maekawa 1: #
1.1.1.2 ! maekawa 2: # $Id: prob2.dem,v 1.1.1.1.2.1 1999/10/11 13:24:36 lhecking Exp $
1.1 maekawa 3: #
4: # Demo Statistical Approximations version 1.1
5: #
6: # Permission granted to distribute freely for non-commercial purposes only
7: #
8: # Copyright (c) 1991, Jos van der Woude, jvdwoude@hut.nl
9:
10: pause 0 ""
11: pause 0 ""
12: pause 0 ""
13: pause 0 ""
14: pause 0 ""
15: pause 0 ""
16: pause 0 " Statistical Approximations, version 1.1"
17: pause 0 ""
18: pause 0 " Copyright (c) 1991, 1992, Jos van de Woude, jvdwoude@hut.nl"
19: pause 0 ""
20: pause 0 ""
21: pause 0 " Permission granted to distribute freely for non-commercial purposes only"
22: pause 0 ""
23: pause 0 ""
24: pause 0 ""
25: pause 0 ""
26: pause 0 ""
27: pause 0 ""
28: pause 0 ""
29: pause 0 ""
30: pause 0 ""
31: pause 0 " NOTE: contains 10 plots and consequently takes some time to run"
32: pause 0 " Press Ctrl-C to exit right now"
33: pause 0 ""
34: pause -1 " Press Return to start demo ..."
35:
36: load "stat.inc"
37:
38: # Binomial PDF using normal approximation
39: n = 25; p = 0.15
40: mu = n * p
41: sigma = sqrt(n * p * (1.0 - p))
42: xmin = floor(mu - 4.0 * sigma)
43: xmin = xmin < 0 ? 0 : xmin
44: xmax = ceil(mu + 4.0 * sigma)
45: ymax = 1.1 * binom(mu) #mode of binomial PDF used
46: xinc = ceil((xmax - xmin) / 10)
47: xinc = xinc > 1 ? xinc : 1
1.1.1.2 ! maekawa 48: set key box
1.1 maekawa 49: set nozeroaxis
50: set xrange [xmin - 1 : xmax + 1]
51: set yrange [0 : ymax]
52: set xlabel "k, x ->"
53: set ylabel "probability density ->"
54: set xtics xmin + 0.499, ceil(sigma), xmax
55: set ytics 0, ymax / 10.0, ymax
56: set format x "%2.0f"
57: set format y "%3.2f"
58: set sample 200
59: set title "binomial PDF using normal approximation"
60: set arrow from mu + 0.5, 0 to mu + 0.5, normal(mu) nohead
61: set arrow from mu + 0.5, normal(mu + sigma) \
62: to mu + 0.5 + sigma, normal(mu + sigma) nohead
63: set label "mu" at mu + 1, ymax / 10
64: set label "sigma" at mu + 1 + sigma, normal(mu + sigma)
65: plot binom(x), normal(x - 0.5)
66: pause -1 "Hit return to continue"
67: set noarrow
68: set nolabel
69:
70: # Binomial PDF using poisson approximation
71: n = 50; p = 0.1
72: mu = n * p
73: sigma = sqrt(mu)
74: xmin = floor(mu - 4.0 * sigma)
75: xmin = xmin < 0 ? 0 : xmin
76: xmax = ceil(mu + 4.0 * sigma)
77: ymax = 1.1 * binom(mu) #mode of binomial PDF used
78: xinc = ceil((xmax - xmin) / 10)
79: xinc = xinc > 1 ? xinc : 1
1.1.1.2 ! maekawa 80: set key box
1.1 maekawa 81: set nozeroaxis
82: set xrange [xmin - 1 : xmax + 1]
83: set yrange [0 : ymax]
84: set xlabel "k ->"
85: set ylabel "probability density ->"
86: set xtics xmin + 0.499, ceil(sigma), xmax
87: set ytics 0, ymax / 10.0, ymax
88: set format x "%2.0f"
89: set format y "%3.2f"
90: set sample 200
91: set title "binomial PDF using poisson approximation"
92: set arrow from mu + 0.5, 0 to mu + 0.5, normal(mu) nohead
93: set arrow from mu + 0.5, normal(mu + sigma) \
94: to mu + 0.5 + sigma, normal(mu + sigma) nohead
95: set label "mu" at mu + 1, ymax / 10
96: set label "sigma" at mu + 1 + sigma, normal(mu + sigma)
97: plot binom(x), poisson(x)
98: pause -1 "Hit return to continue"
99: set noarrow
100: set nolabel
101:
102: # Geometric PDF using gamma approximation
103: p = 0.3
104: mu = (1.0 - p) / p
105: sigma = sqrt(mu / p)
106: lambda = p
107: rho = 1.0 - p
108: xmin = floor(mu - 4.0 * sigma)
109: xmin = xmin < 0 ? 0 : xmin
110: xmax = ceil(mu + 4.0 * sigma)
111: xinc = ceil((xmax - xmin) / 10)
112: xinc = xinc > 1 ? xinc : 1
113: ymax = 1.1 * p
1.1.1.2 ! maekawa 114: set key box
1.1 maekawa 115: set nozeroaxis
116: set xrange [xmin - 1 : xmax + 1]
117: set yrange [0 : ymax]
118: set xlabel "k, x ->"
119: set ylabel "probability density ->"
120: set xtics xmin + 0.499, ceil((xmax - xmin)/ 10.0), xmax
121: set ytics 0, ymax / 10.0, ymax
122: set format x "%2.0f"
123: set format y "%3.2f"
124: set sample 200
125: set title "geometric PDF using gamma approximation"
126: set arrow from mu + 0.5, 0 to mu + 0.5, g(mu) nohead
127: set arrow from mu + 0.5, g(mu + sigma) \
128: to mu + 0.5 + sigma, g(mu + sigma) nohead
129: set label "mu" at mu + 1, ymax / 10
130: set label "sigma" at mu + 1 + sigma, g(mu + sigma)
131: plot geometric(x), g(x - 0.5)
132: pause -1 "Hit return to continue"
133: set noarrow
134: set nolabel
135:
136: # Geometric PDF using normal approximation
137: p = 0.3
138: mu = (1.0 - p) / p
139: sigma = sqrt(mu / p)
140: xmin = floor(mu - 4.0 * sigma)
141: xmin = xmin < 0 ? 0 : xmin
142: xmax = ceil(mu + 4.0 * sigma)
143: xinc = ceil((xmax - xmin) / 10)
144: xinc = xinc > 1 ? xinc : 1
145: ymax = 1.1 * p
1.1.1.2 ! maekawa 146: set key box
1.1 maekawa 147: set nozeroaxis
148: set xrange [xmin - 1 : xmax + 1]
149: set yrange [0 : ymax]
150: set xlabel "k, x ->"
151: set ylabel "probability density ->"
152: set xtics xmin + 0.499, ceil((xmax - xmin)/ 10.0), xmax
153: set ytics 0, ymax / 10.0, ymax
154: set format x "%2.0f"
155: set format y "%3.2f"
156: set sample 200
157: set title "geometric PDF using normal approximation"
158: set arrow from mu + 0.5, 0 to mu + 0.5, normal(mu) nohead
159: set arrow from mu + 0.5, normal(mu + sigma) \
160: to mu + 0.5 + sigma, normal(mu + sigma) nohead
161: set label "mu" at mu + 1, ymax / 10
162: set label "sigma" at mu + 1 + sigma, normal(mu + sigma)
163: plot geometric(x), normal(x - 0.5)
164: pause -1 "Hit return to continue"
165: set noarrow
166: set nolabel
167:
168: # Hypergeometric PDF using binomial approximation
169: nn = 75; mm = 25; n = 10
170: p = real(mm) / nn
171: mu = n * p
172: sigma = sqrt(real(nn - n) / (nn - 1.0) * n * p * (1.0 - p))
173: xmin = floor(mu - 4.0 * sigma)
174: xmin = xmin < 0 ? 0 : xmin
175: xmax = ceil(mu + 4.0 * sigma)
176: xinc = ceil((xmax - xmin) / 10)
177: xinc = xinc > 1 ? xinc : 1
178: ymax = 1.1 * hypgeo(mu) #mode of binom PDF used
1.1.1.2 ! maekawa 179: set key box
1.1 maekawa 180: set nozeroaxis
181: set xrange [xmin - 1 : xmax + 1]
182: set yrange [0 : ymax]
183: set xlabel "k ->"
184: set ylabel "probability density ->"
185: set xtics xmin, xinc, xmax
186: set ytics 0, ymax / 10.0, ymax
187: set format x "%2.0f"
188: set format y "%3.2f"
189: set sample 200
190: set title "hypergeometric PDF using binomial approximation"
191: set arrow from mu + 0.5, 0 to mu + 0.5, binom(mu) nohead
192: set arrow from mu + 0.5, binom(mu + sigma) \
193: to mu + 0.5 + sigma, binom(mu + sigma) nohead
194: set label "mu" at mu + 1, ymax / 10
195: set label "sigma" at mu + 1 + sigma, binom(mu + sigma)
196: plot hypgeo(x), binom(x)
197: pause -1 "Hit return to continue"
198: set noarrow
199: set nolabel
200:
201: # Hypergeometric PDF using normal approximation
202: nn = 75; mm = 25; n = 10
203: p = real(mm) / nn
204: mu = n * p
205: sigma = sqrt(real(nn - n) / (nn - 1.0) * n * p * (1.0 - p))
206: xmin = floor(mu - 4.0 * sigma)
207: xmin = xmin < 0 ? 0 : xmin
208: xmax = ceil(mu + 4.0 * sigma)
209: xinc = ceil((xmax - xmin) / 10)
210: xinc = xinc > 1 ? xinc : 1
211: ymax = 1.1 * hypgeo(mu) #mode of binom PDF used
1.1.1.2 ! maekawa 212: set key box
1.1 maekawa 213: set nozeroaxis
214: set xrange [xmin - 1 : xmax + 1]
215: set yrange [0 : ymax]
216: set xlabel "k, x ->"
217: set ylabel "probability density ->"
218: set xtics xmin, xinc, xmax
219: set ytics 0, ymax / 10.0, ymax
220: set format x "%2.0f"
221: set format y "%3.2f"
222: set sample 200
223: set title "hypergeometric PDF using normal approximation"
224: set arrow from mu + 0.5, 0 to mu + 0.5, normal(mu) nohead
225: set arrow from mu + 0.5, normal(mu + sigma) \
226: to mu + 0.5 + sigma, normal(mu + sigma) nohead
227: set label "mu" at mu + 1, ymax / 10
228: set label "sigma" at mu + 1 + sigma, normal(mu + sigma)
229: plot hypgeo(x), normal(x - 0.5)
230: pause -1 "Hit return to continue"
231: set noarrow
232: set nolabel
233:
234: # Negative binomial PDF using gamma approximation
235: r = 8; p = 0.6
236: mu = r * (1.0 - p) / p
237: sigma = sqrt(mu / p)
238: lambda = p
239: rho = r * (1.0 - p)
240: xmin = int(mu - 4.0 * sigma)
241: xmin = xmin < 0 ? 0 : xmin
242: xmax = int(mu + 4.0 * sigma)
243: xinc = ceil((xmax - xmin) / 10)
244: xinc = xinc > 1 ? xinc : 1
245: ymax = 1.1 * g((rho - 1) / lambda) #mode of gamma PDF used
1.1.1.2 ! maekawa 246: set key box
1.1 maekawa 247: set nozeroaxis
248: set xrange [xmin - 1 : xmax + 1]
249: set yrange [0 : ymax]
250: set xlabel "k, x ->"
251: set ylabel "probability density ->"
252: set xtics xmin + 0.499, ceil((xmax - xmin)/ 10.0), xmax
253: set ytics 0, ymax / 10.0, ymax
254: set format x "%2.0f"
255: set format y "%3.2f"
256: set sample 200
257: set title "negative binomial PDF using gamma approximation"
258: set arrow from mu + 0.5, 0 to mu + 0.5, g(mu) nohead
259: set arrow from mu + 0.5, g(mu + sigma) \
260: to mu + 0.5 + sigma, g(mu + sigma) nohead
261: set label "mu" at mu + 1, ymax / 10
262: set label "sigma" at mu + 1 + sigma, g(mu + sigma)
263: plot negbin(x), g(x - 0.5)
264: pause -1 "Hit return to continue"
265: set noarrow
266: set nolabel
267:
268: # Negative binomial PDF using normal approximation
269: r = 8; p = 0.4
270: mu = r * (1.0 - p) / p
271: sigma = sqrt(mu / p)
272: xmin = floor(mu - 4.0 * sigma)
273: xmin = xmin < 0 ? 0 : xmin
274: xmax = ceil(mu + 4.0 * sigma)
275: xinc = ceil((xmax - xmin) / 10)
276: xinc = xinc > 1 ? xinc : 1
277: ymax = 1.1 * negbin(mu - 1/p) #mode of gamma PDF used
1.1.1.2 ! maekawa 278: set key box
1.1 maekawa 279: set nozeroaxis
280: set xrange [xmin - 1 : xmax + 1]
281: set yrange [0 : ymax]
282: set xlabel "k, x ->"
283: set ylabel "probability density ->"
284: set xtics xmin + 0.499, ceil((xmax - xmin)/ 10.0), xmax
285: set ytics 0, ymax / 10.0, ymax
286: set format x "%2.0f"
287: set format y "%3.2f"
288: set sample 200
289: set title "negative binomial PDF using normal approximation"
290: set arrow from mu + 0.5, 0 to mu + 0.5, normal(mu) nohead
291: set arrow from mu + 0.5, normal(mu + sigma) \
292: to mu + 0.5 + sigma, normal(mu + sigma) nohead
293: set label "mu" at mu + 1, ymax / 10
294: set label "sigma" at mu + 1 + sigma, normal(mu + sigma)
295: plot negbin(x), normal(x - 0.5)
296: pause -1 "Hit return to continue"
297: set noarrow
298: set nolabel
299:
300: # Normal PDF using logistic approximation
301: mu = 1.0; sigma = 1.5
302: a = mu
303: lambda = pi / (sqrt(3.0) * sigma)
304: xmin = mu - 4.0 * sigma
305: xmax = mu + 4.0 * sigma
306: ymax = 1.1 * logistic(mu) #mode of logistic PDF used
1.1.1.2 ! maekawa 307: set key box
1.1 maekawa 308: set nozeroaxis
309: set xrange [xmin: xmax]
310: set yrange [0 : ymax]
311: set xlabel "x ->"
312: set ylabel "probability density ->"
313: set xtics xmin, (xmax - xmin)/ 10.0, xmax
314: set ytics 0, ymax / 10.0, ymax
315: set format x "%.1f"
316: set format y "%.2f"
317: set sample 200
318: set title "normal PDF using logistic approximation"
319: set arrow from mu,0 to mu, normal(mu) nohead
320: set arrow from mu, normal(mu + sigma) \
321: to mu + sigma, normal(mu + sigma) nohead
322: set label "mu" at mu + 1, ymax / 10
323: set label "sigma" at mu + 1 + sigma, normal(mu + sigma)
324: plot logistic(x), normal(x)
325: pause -1 "Hit return to continue"
326: set noarrow
327: set nolabel
328:
329: # Poisson PDF using normal approximation
330: mu = 5.0
331: sigma = sqrt(mu)
332: xmin = floor(mu - 4.0 * sigma)
333: xmin = xmin < 0 ? 0 : xmin
334: xmax = ceil(mu + 4.0 * sigma)
335: xinc = ceil((xmax - xmin) / 10)
336: xinc = xinc > 1 ? xinc : 1
337: ymax = 1.1 * poisson(mu) #mode of poisson PDF used
1.1.1.2 ! maekawa 338: set key box
1.1 maekawa 339: set nozeroaxis
340: set xrange [xmin - 1 : xmax + 1]
341: set yrange [0 : ymax]
342: set xlabel "k, x ->"
343: set ylabel "probability density ->"
344: set xtics xmin, xinc, xmax
345: set ytics 0, ymax / 10.0, ymax
346: set format x "%2.0f"
347: set format y "%3.2f"
348: set sample 200
349: set title "poisson PDF using normal approximation"
350: set arrow from mu + 0.5, 0 to mu + 0.5, normal(mu) nohead
351: set arrow from mu + 0.5, normal(mu + sigma) \
352: to mu + 0.5 + sigma, normal(mu + sigma) nohead
353: set label "mu" at mu + 1, ymax / 10
354: set label "sigma" at mu + 1 + sigma, normal(mu + sigma)
355: plot poisson(x), normal(x - 0.5)
1.1.1.2 ! maekawa 356: reset
! 357:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>