📄 randplots.gnp
字号:
#set term postscript eps enhancedset term pstex monochromeset samples 300#set size 0.8,0.88 # paperback 6x9set size 1,1.1 # us letter# Continuous distributionsset xlabel "$x$"set ylabel "$p(x)$"set xrange [-5:5]set yrange [0:0.5]set ytics 0.1set xtics 1set output "rand-gaussian.tex"set title "Gaussian Distribution"p(x)=1/sqrt(2*pi*sigma**2)*exp(-x**2/(2*sigma**2))plot sigma=1.0, p(x) title "$\sigma=1$", \ sigma=2.0, p(x) title "$\sigma=2$"set xrange [0:5]set yrange [0:0.2]set ytics 0.1set xtics 1set output "rand-gaussian-tail.tex"set title "Gaussian Tail Distribution"p(x)= x > a ? 1/sqrt(2*pi*sigma**2)*exp(-x**2/(2*sigma**2)) : 0plot a=1.5, sigma=1.0, p(x) title "$\sigma=1,a=1.5$"set xrange [0:5]set yrange [0:1.09]set ytics 0.1set xtics 1set output "rand-rayleigh-tail.tex"set title "Rayleigh Tail Distribution"p(x)= x > a ? (x/sigma**2)*exp((a**2 - x**2)/(2*sigma**2)) : 0plot a=1.0, sigma=1.0, p(x) title "$a=1,\sigma=1$", \ a=0.5, sigma=2.0, p(x) title "$a=0.5,\sigma=2$"set xlabel "$x$"set ylabel "$y$"set xrange [-2:2]set yrange [-2:2]set ytics 1set xtics 1set output "rand-bivariate-gaussian.tex"set title "Bivariate Gaussian Distribution"set isosamples 30p(x,y)=1/sqrt(2*pi*sqrt(1-rho**2))*exp(-(x**2 + y**2 - 2*rho*x*y)/(2*(1-rho**2)))#set cntrparam csplineset noclabelset contourset view 0,0set nosurfacesplot rho=0.9, p(x,y) title "$\sigma_x=1, \sigma_y=1, \rho=0.9$"set xlabel "$x$"set ylabel "$p(x)$"set ytics 0.1set xrange [-5:5]set yrange [0:0.4]set output "rand-cauchy.tex"set title "Cauchy Distribution"p(x)=1/(pi*a*(1+(x/a)**2))plot a=1.0, p(x) title "$a=1$", \ a=2.0, p(x) title "$a=2$"set ytics 0.5set yrange [0:1]set xrange [0:3]set output "rand-exponential.tex"set title "Exponential Distribution"p(x)=exp(-x/mu)/muplot mu=1.0, p(x) title "$\mu=1$", \ mu=2.0, p(x) title "$\mu=2$"set yrange [0:1]set xrange [0:3]set output "rand-chisq.tex"set title "Chi-squared Distribution"p(x)=(x/2)**(nu/2.0-1.0) *exp(-x/2)/ (2*gamma(nu/2.0))plot nu=1.0, p(x) title "$\nu=1$", \ nu=2.0, p(x) title "$\nu=2$", \ nu=3.0, p(x) title "$\nu=3$"set yrange [0:1]set xrange [0:5]set output "rand-erlang.tex"set title "Erlang Distribution"p(x)=x**(n-1) *exp(-x/a)/ (gamma(n)*a**n)plot n=1.0, a=1, p(x) title "$n=1$", \ n=2.0, a=1.0, p(x) title "$n=2$", \ n=3.0, a=1.0, p(x) title "$n=3$"set xrange [0:2]set xtics 1set output "rand-fdist.tex"set title "F-Distribution"p(x)=gamma((v1+v2)/2.0)*v1**(v1/2.0)*v2**(v2/2.0)\ /gamma(v1/2.0)/gamma(v2/2.0) * \ x**(v1/2.0-1)*(v2+v1*x)**-(v1/2.0+v2/2.0)plot v1=1.0, v2=1.0, p(x) title "$\nu_1=1, \nu_2=1$", \ v1=3.0, v2=1.0, p(x) title "$\nu_1=1, \nu_2=2$"set xrange [0:5]set output "rand-flat.tex"set title "Flat Distribution"p(x)= (x<b && x>a) ? 1/(b-a) : 0plot a=0.5, b=2.5, p(x) title "$a=0.5,b=2.5$" with step, \ a=1.2, b=4.8, p(x) title "$a=1.2,b=4.8$" with stepset xrange [0:5]set yrange [0:1]set ytics 0.5set output "rand-gamma.tex"set title "Gamma Distribution"p(x)= x**(a-1)* exp(-x) / gamma(a)plot a=1.0, p(x) title "$a=1$", \ a=2.0, p(x) title "$a=2$", \ a=3.0, p(x) title "$a=3$"set xrange [0:1]set yrange [0:4]set xtics 0.25set ytics 1set output "rand-beta.tex"set title "Beta Distribution"p(x)= gamma(a+b)/(gamma(a)*gamma(b))*x**(a-1)*(1-x)**(b-1)plot a=2.0, b=2.0, p(x) title "$a=2,b=2$", \ a=4.0, b=1.0, p(x) title "$a=4,b=1$", \ a=1.0, b=4.0, p(x) title "$a=1,b=4$"set xrange [-5:5]set yrange [0:0.3]set ytics 0.1set xtics 1set output "rand-logistic.tex"set title "Logistic Distribution"p(x)= exp(-x/a)/a/(1+exp(-x/a))**2plot a=1.0, p(x) title "$a=1$", \ a=2.0, p(x) title "$a=2$"set xrange [0:3]set yrange [0:0.7]set xtics 1set ytics 0.1set output "rand-lognormal.tex"set title "Lognormal Distribution"p(x)= exp(-(log(x)-zeta)**2/2/sigma**2)/sqrt(2*pi*sigma**2)/xplot zeta=0.0, sigma=1.0, p(x) title "$\zeta=0, \sigma=1$", \ zeta=1.0, sigma=1.0, p(x) title "$\zeta=1, \sigma=1$"set xrange [0:5]set yrange [0:2]set ytics 0.5set xtics 1set output "rand-pareto.tex"set title "Pareto Distribution"p(x)= x>b ? a*b**a/x**(a+1) : 0plot a=1.0, b=1, p(x) title "$a=1, b=1$", \ a=3.0, b=2, p(x) title "$a=3, b=2 $"set xrange [0:5]set yrange [0:0.7]set ytics 0.1set xtics 1set output "rand-rayleigh.tex"set title "Rayleigh Distribution"p(x)= (x/sigma**2)*exp(-x**2/(2*sigma**2))plot sigma=1.0, p(x) title "$\sigma=1$", \ sigma=2.0, p(x) title "$\sigma=2$"set xrange [0:5]set yrange [0:1.09]set ytics 0.1set xtics 1set output "rand-rayleigh-tail.tex"set title "Rayleigh Tail Distribution"p(x)= x > a ? (x/sigma**2)*exp((a**2 - x**2)/(2*sigma**2)) : 0plot a=1.0, sigma=1.0, p(x) title "$a=1,\sigma=1$", \ a=0.5, sigma=2.0, p(x) title "$a=0.5,\sigma=2$"set xrange [-4:4]set yrange [0:0.5]set ytics 0.1set output "rand-tdist.tex"set title "Student's t distribution"p(x)=gamma((v+1.0)/2)/sqrt(pi*v)/gamma(v/2)*(1+(x**2)/v)**-((v+1.0)/2)plot v=1.0, p(x) title "$\nu_1=1$", \ v=5.0, p(x) title "$\nu_1=5$"set xrange [-5:5]set yrange [0:0.55]set ytics 0.1set output "rand-laplace.tex"set title "Laplace Distribution (Two-sided Exponential)"p(x)=exp(-abs(x)/a)/2/aplot a=1.0, p(x) title "$a=1$", \ a=2.0, p(x) title "$a=2$"set xrange [-5:5]set yrange [0:0.8]set ytics 0.1set output "rand-exppow.tex"set title "Exponential Power Distribution"p(x)=exp(-(abs(x/a))**b)/2/a/gamma(1.0+1.0/b)plot a=1.0, b=2.5, p(x) title "$a=1, b=2.5$", \ a=1.0, b=0.5, p(x) title "$a=2, b=0.5$"set xrange [-5:10]set yrange [0:0.2]set ytics 0.1set output "rand-landau.tex"set title "Landau Distribution"plot 'landau.dat' notitle w linesset xrange [-5:5]set yrange [0:0.45]set ytics 0.1set output "rand-levy.tex"set title "Levy Distribution"p1(x)=1/(pi*mu*(1+(x/mu)**2))p2(x)=1/sqrt(2*pi*2*mu**2)*exp(-x**2/(4*mu**2)) plot mu=1.0, a=1, p1(x) title "$c=1, \alpha=1.0$", \ mu=1.0, a=2, p2(x) title "$c=1, \alpha=2.0$"set xrange [-5:5]set yrange [0:0.07]set ytics 0.1set output "rand-levyskew.tex"set title "Levy Skew Distribution"logp(x)= 1.0990e+01+x*(-3.3388e-01+x*(-4.2372e-01+x*(2.1749e-01+x*(-4.4910e-02 + x*(4.1801e-03 - 1.4456e-04*x)))))p1(x)=exp(logp(x))/1000000plot mu=1.0, a=1, p1(x) title "$c=1, \alpha=1.0, \beta=1.0$"set xrange [0:2]set yrange [0:1.5]set ytics 0.5set xtics 0.5set output "rand-weibull.tex"set title "Weibull Distribution"p(x)=(b/a) * (x/a)**(b-1) * exp(-(x/a)**b)plot a=1.0, b=1.0, p(x) title "$a=1,b=1$", \ a=1.0, b=2.0, p(x) title "$a=1,b=2$", \ a=2.0, b=3.0, p(x) title "$a=2,b=3$"set xrange [-2:2]set yrange [0:0.7]set ytics 0.1set xtics 0.5set output "rand-gumbel1.tex"set title "Type 1 Gumbel Distribution"p1(x)=a*b*exp(-(b*exp(-a*x)+a*x))plot a=1.0, b=1.0, p1(x) title "Type 1, $a=1,b=1$"set xrange [0:2]set yrange [0:0.7]set ytics 0.1set xtics 0.5set output "rand-gumbel2.tex"set title "Type 2 Gumbel Distribution"p2(x)=x > 0 ? a*b*x**(-a-1)*exp(-b*x**-a) : 0plot a=1.0, b=1.0, p2(x) title "Type 2, $a=1,b=1$"# Discrete distributionsset xlabel "$k$"set ylabel "$p(k)$"set ticscale 0 1set mxtics 2set xrange [-0.5:10.5]set yrange [0:0.3]set ytics 0.1set xtics 1set function style stepset output "rand-poisson.tex"set title "Poisson Distribution"p(x)=mu**int(x)/(int(x)!) * exp(-mu)plot mu=2.5, p(x+0.5) title "$\mu=2.5$"set xrange [:1.5]set yrange [0:1]set ytics 0.1set xtics 1set function style stepset output "rand-bernoulli.tex"set title "Bernoulli Trial"p(x)= (int(x) == 0) ? 1-p : pplot p = 0.7, p(x+0.5) title "$p=0.7$"set xrange [:10.5]set yrange [0:0.3]set xtics 1set ytics 0.1set output "rand-binomial.tex"set title "Binomial Distribution"p(x)= P**int(x)*(1-P)**(n-int(x))*gamma(n+1.0)/gamma(int(x)+1.0)/gamma(n-int(x)+1.0) + 1e-5plot P=0.5,n=9.99999999, p(x+0.5) title "$p=0.5,n=9$"set xrange [:5.5]set yrange [0:0.7]set ytics 0.1set xtics 1set output "rand-geometric.tex"set title "Geometric Distribution"p(x)=int(x) ? P*(1-P)**int(x-1) : 0plot P=0.5, p(x+0.5) title "$p=0.5$"set xrange [:10.5]set yrange [0:0.7]set ytics 0.1set xtics 1set output "rand-logarithmic.tex"set title "Logarithmic Distribution"p(x)=int(x) ? (-1/log(1-P))*(P**int(x))/int(x) : 0plot P=0.7, p(x+0.5) title "$p=0.7$"set xrange [:10.5]set yrange [0:0.7]set ytics 0.1set xtics 1set output "rand-hypergeometric.tex"set title "Hypergeometric Distribution"choose(a,b)=gamma(a+1)/(gamma(b+1)*gamma(a-b+1))p(x)=choose(n1,int(x))*choose(n2,t-int(x))/choose(n1+n2,t)plot n1=5, n2=20, t=3, p(x+0.5) title "$n1=5, n2=20, t=3$"set xrange [:10.5]set yrange [0:0.3]set xtics 1set ytics 0.1set output "rand-nbinomial.tex"set title "Negative Binomial Distribution"p(x)= (P**n)*((1-P)**(int(x)))*gamma(n+int(x))/gamma(n)/gamma(int(x)+1.0) + 1e-5plot P=0.5,n=3.5, p(x+0.5) title "$p=0.5,n=3.5$"set xrange [:10.5]set yrange [0:0.3]set xtics 1set ytics 0.1set output "rand-pascal.tex"set title "Pascal Distribution"p(x)= (P**n)*((1-P)**(int(x)))*gamma(n+int(x))/gamma(n)/gamma(int(x)+1.0) + 1e-5plot P=0.5,n=3, p(x+0.5) title "$p=0.5,n=3$"######################################################################set xrange [-7:7]set yrange [-7:7]set xtics 1set ytics 1set size 0.7,1.0set size squareset output "random-walk.tex"set title "Random walk"set xzeroaxisset yzeroaxisset nokeyplot "rand-walk.dat" using 1:2 with linesp
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -