require ("xfig"); require ("rand"); require ("histogram"); private define gauss_pdf (x, sigma) { return 1.0/sqrt(2*PI*sigma^2) * exp(-0.5*x^2/sigma^2); } define slsh_main () { variable mu = 5, sigma = 1; variable data = mu + rand_gauss (sigma, 100); variable dx = 0.4; variable x = [min(data):max(data):dx]; variable y = hist1d (data, x); variable dy = sqrt (y); variable xx = [mu-5*sigma:mu+5*sigma:0.1*dx]; variable yy = (dx*length (data)) * gauss_pdf (xx-mu, sigma); variable w = xfig_plot_new (); w.world (min(x), max(x), 0.9, max(y)*1.1); w.plot (xx, yy); x += 0.5*dx; w.plot (x,y, dx, dy ; line=0, sym="diamond", color="blue1", width=3, size=5, fill=10); w.title ("Example with error bars"); w.xlabel("$\lambda$ [\AA]"R); w.ylabel("Counts per bin"R); xfig_render_object (w, "errbar.png"); }