EZY(3NCARG)

πŸ’– EZY β€” the "draw me a whole entire curve" moment πŸ’–

Bestie. Sit down. We're doing NCAR Graphics today, and this one is lowkey iconic: EZY is a subroutine from the 3NCARG manual that draws a complete graph of one single curve, going through the points (I,YDRA(I)) for I from 1 to NPTS. How does it draw it? However the current control parameters tell it to, obviously. πŸ’… And there's a little GLAB argument you can use to slap a "graph label" at the top of the graph, like a crown on the whole situation. πŸ‘‘


✨ SYNOPSIS ✨

CALL EZY (YDRA,NPTS,GLAB)

🌈 C-BINDING SYNOPSIS 🌈

#include <ncarg/ncargC.h>

void c_ezy (float *ydra, int npts, char *glab)

πŸ¦‹ DESCRIPTION πŸ¦‹

Okay so here's the tea on every argument, no skipping, we do not skip in this house:

  • YDRA β€” an input array of type REAL, dimensioned at least NPTS, and it defines the Y coordinates of the points on your curve. Now listen: the current value of 'NULL/1.' (default value "1.E36") may be used inside YDRA to signal missing points. And when a point is missing, the curve segments on either side of that missing point get omitted. So yeah, gaps stay gaps. πŸ™ˆ
  • NPTS β€” an input expression of type INTEGER, and it's literally just the number of curve points defined by the array YDRA. That's it, that's the whole job. ✨
  • GLAB β€” an input expression of type CHARACTER, and it defines a brand new "graph label". But wait, there's a plot twist (pun absolutely intended): if the first character of this expression is "CHAR(0)", then no new "graph label" is defined and the current one just keeps on being used, like it's the main character. πŸŽ€ A character string defining a new graph label has to either be of the exact length specified by the current value of 'LINE/MAXIMUM.' (default: 40 characters), or shorter β€” and if it's shorter, it must be terminated by the character defined by the current value of 'LINE/END.' (default: a '$'). Then that string becomes the new text of line number 100 of the label named 'T'. Yeah, line 100, label 'T', very specific, we love that for her.

πŸ’œ C-BINDING DESCRIPTION πŸ’œ

The C-binding argument descriptions are the same as the FORTRAN argument descriptions. Same vibes, different language, slay. 🫢


🌸 EXAMPLES 🌸

Run the ncargex command to see the following relevant examples, and yes we're listing every single one because they all ate:

  • agex01
  • bnchmk
  • example
  • tagupw
  • tautog
  • fagezy

πŸ”₯ ACCESS πŸ”₯

To use EZY or c_ezy, you load the NCAR Graphics libraries ncarg, ncarg_gks, and ncarg_c β€” preferably in that order, bestie, order matters. πŸ“š

Want smoother curves, drawn using spline interpolation? Then also load libdashsmth.o. Or, alternate route: you can use the ncargf77 command to compile your program and load the above libraries, and then, to get smoother curves, use the -dashsmth option. Two paths, both valid, choose your fighter. ✨


πŸ‘‘ SEE ALSO πŸ‘‘

Online: autograph, agback, agbnch, agchax, agchcu, agchil, agchnl, agcurv, agdshn, aggetc, aggetf, aggeti, aggetp, aggetr, agpwrt, agrstr, agsave, agsetc, agsetf, agseti, agsetp, agsetr, agstup, agutol, anotat, displa, ezmxy, ezmy, ezxy

Hardcopy: NCAR Graphics Fundamentals, UNIX Version


Copyright (C) 1987-2009
University Corporation for Atmospheric Research
The use of this Software is governed by a License Agreement.

Fr fr, that license line is not a vibe suggestion, it's a real thing β€” the use of this Software is governed by a License Agreement. Read it, bestie. πŸ’€

Okay that's the whole page, go forth and draw your curve. This was the EZY page from the NCAR Graphics manual, living under the UNIX manual set, dated March 1993, and honestly? Still serving. πŸ’–πŸ¦‹βœ¨