VOPL is a library of C routines for doing graph plots. It handles a variety of fits and scalings, together with providing defaults for positioning graph titles, axis titles, and labels. VOPL may be called from C or FORTRAN.
Fortran: subroutine vp_adjustscale(points, number, axis) real points(number) integer number character *1 axis C: vp_adjustscale(points, number, axis) float points[]; int number; char axis;
Fortran: subroutine vp_range(min, max, axis) real min, max character *1 axis C: vp_range(min, max, axis) float min, max; char axis;
Fortran: subroutine vp_graphtitle(title) character*(*) title C: vp_graphtitle(title) char *title;
Fortran: subroutine vp_drawtitle() C: vp_drawtitle()
Fortran: subroutine vp_axistitle(title, axis) character*(*) title character *1 axis C: vp_axistitle(title, axis) char *title, axis;
Fortran: subroutine vp_plot2(x, y, n) real x(n), y(n) integer n C: vp_plot2(x, y, n) float x[], y[]; int n;
Fortran: subroutine vp_fit(type) integer type C: vp_fit(type) int type; Current vp_fit types are: 0 - No lines at all. 1 - Straight line fit. 2 - Cubic spline fit. 3 - Least squares fit. 4 - Power equation fit. 5 - Saturated growth rate fit.
Fortran: subroutine vp_scaling(type, axis) integer type character *1 axis C: vp_scaling(type, axis) int type; char axis;Current scaling types are 0 for
Fortran: subroutine vp_endslopes(a, b) real a, b C: vp_endslopes(a, b) float a, b;
Fortran: subroutine vp_degree(deg) integer deg C: vp_degree(deg) int deg;
Fortran: subroutine vp_gridspacing(n, axis) integer n character *1 axis C: vp_gridspacing(n, axis) int n; char axis;
Fortran: subroutine vp_tickmarks(number, axis) integer number character *1 axis C: vp_tickmarks(number, axis) int number; char axis;
Fortran: subroutine vp_drawaxis(axis) character *1 axis C: vp_drawaxis(axis) char *axis;
Fortran: subroutine vp_drawaxes() C: vp_drawaxes()
Fortran: subroutine vp_drawaxes2() C: vp_drawaxes2()
Fortran: subroutine vp_annotation(format, axis) character*(*) format character *1 axis C: vp_annotation(format, axis) char *format, axis
Fortran: subroutine vp_graphprecision(number) integer number C: vp_graphprecision(number) int number;
Fortran: subroutine vp_marker(string) character*(*) string C: vp_marker(string) char *string;
Fortran: subroutine vp_markerspacing(num) integer num C: vp_markerspacing(num) int num;
Fortran: subroutine vp_markscale(x, y) real x, y C: vp_markscale(x, y) float x, y;
The manual page isn't finished. There isn't really any Z-axis stuff yet. The Whole thing isn't finished and could stand a total recode.