GR Reference¶
- module
GR
¶ GR is a universal framework for cross-platform visualization applications. It offers developers a compact, portable and consistent graphics library for their programs. Applications range from publication quality 2D graphs to the representation of complex 3D scenes.
See https://gr-framework.org/julia.html for full documentation.
Basic usage: ```julia using GR GR.init() # optional plot(
[0, 0.2, 0.4, 0.6, 0.8, 1.0], [0.3, 0.5, 0.4, 0.2, 0.6, 0.7]
- function
isijulia
()¶
- function
isatom
()¶
- function
ispluto
()¶
- function
isvscode
()¶
- function
setraw!
(raw)¶
- function
init
(always::Bool = false)¶ init(always::Bool = false)
Initialize GR’s environmental variables before plotting and ensure that the binary shared libraries are loaded. Initialization usually only needs to be done once, but reinitialized may be required when settings change.
The always argument is true if initialization should be forced in the current and subsequent calls. It is false by default so that initialization only is done once.
# Extended Help
Environmental variables which influence init: GRDISPLAY - if “js” or “pluto”, javascript support is initialized GKS_NO_GUI - no initialization is done GKS_IGNORE_ENCODING - Force use of UTF-8 for font encoding, ignore GKS_ENCODING
Environmental variables set by init: GKS_FONTPATH - path to GR fonts, often the same as GRDIR GKS_USE_CAIRO_PNG GKSwstype - Graphics workstation type, see help for openws GKS_QT - Command to start QT backend via gksqt executable GKS_ENCODING - Sets the text encoding (e.g. Latin1 or UTF-8)
- function
initgr
()¶
- function
opengks
()¶
- function
closegks
()¶
- function
osc_seq
()¶
- function
st_seq
()¶
- function
is_dark_mode
()¶
- function
inqdspsize
()¶
- function
openws
(workstation_id::Int, connection, workstation_type::Int)¶ openws(workstation_id::Int, connection, workstation_type::Int)
Open a graphical workstation.
Parameters:
- workstation_id :
A workstation identifier.
- connection :
A connection identifier.
- workstation_type :
The desired workstation type.
Available workstation types:
5
Workstation Independent Segment Storage
7, 8
Computer Graphics Metafile (CGM binary, clear text)
41
Windows GDI
51
Mac Quickdraw
61 - 64
PostScript (b/w, color)
101, 102
Portable Document Format (plain, compressed)
210 - 213
X Windows
214
Sun Raster file (RF)
215, 218
Graphics Interchange Format (GIF87, GIF89)
216
Motif User Interface Language (UIL)
320
Windows Bitmap (BMP)
321
JPEG image file
322
Portable Network Graphics file (PNG)
323
Tagged Image File Format (TIFF)
370
Xfig vector graphics file
371
Gtk
380
wxWidgets
381
Qt4
382
Scaleable Vector Graphics (SVG)
390
Windows Metafile
400
Quartz
410
Socket driver
415
0MQ driver
420
OpenGL
430
HTML5 Canvas
- function
closews
(workstation_id::Int)¶ closews(workstation_id::Int)
Close the specified workstation.
Parameters:
- workstation_id :
A workstation identifier.
- function
activatews
(workstation_id::Int)¶ activatews(workstation_id::Int)
Activate the specified workstation.
Parameters:
- workstation_id :
A workstation identifier.
- function
deactivatews
(workstation_id::Int)¶ deactivatews(workstation_id::Int)
Deactivate the specified workstation.
Parameters:
- workstation_id :
A workstation identifier.
- function
clearws
()¶
- function
updatews
()¶
- function
polyline
(x, y)¶ polyline(x, y)
Draw a polyline using the current line attributes, starting from the first data point and ending at the last data point.
Parameters:
- x :
A list containing the X coordinates
- y :
A list containing the Y coordinates
The values for x and y are in world coordinates. The attributes that control the appearance of a polyline are linetype, linewidth and color index.
- function
polymarker
(x, y)¶ polymarker(x, y)
Draw marker symbols centered at the given data points.
Parameters:
- x :
A list containing the X coordinates
- y :
A list containing the Y coordinates
The values for x and y are in world coordinates. The attributes that control the appearance of a polymarker are marker type, marker size scale factor and color index.
- function
latin1
(string)¶
- function
text
(x::Real, y::Real, string)¶ text(x::Real, y::Real, string)
Draw a text at position x, y using the current text attributes.
Parameters:
- x :
The X coordinate of starting position of the text string
- y :
The Y coordinate of starting position of the text string
- string :
The text to be drawn
The values for x and y are in normalized device coordinates. The attributes that control the appearance of text are text font and precision, character expansion factor, character spacing, text color index, character height, character up vector, text path and text alignment.
- function
inqtext
(x, y, string)¶
- function
textx
(x::Real, y::Real, string, opts::UInt32)¶
- function
inqtextx
(x, y, string, opts::UInt32)¶
- function
fillarea
(x, y)¶ fillarea(x, y)
Allows you to specify a polygonal shape of an area to be filled.
Parameters:
- x :
A list containing the X coordinates
- y :
A list containing the Y coordinates
The attributes that control the appearance of fill areas are fill area interior style, fill area style index and fill area color index.
- function
cellarray
(xmin::Real, xmax::Real, ymin::Real, ymax::Real, dimx::Int, dimy::Int, color)¶ cellarray(xmin::Real, xmax::Real, ymin::Real, ymax::Real, dimx::Int, dimy::Int, color)
Display rasterlike images in a device-independent manner. The cell array function partitions a rectangle given by two corner points into DIMX X DIMY cells, each of them colored individually by the corresponding color index of the given cell array.
Parameters:
- xmin, ymin :
Lower left point of the rectangle
- xmax, ymax :
Upper right point of the rectangle
- dimx, dimy :
X and Y dimension of the color index array
- color :
Color index array
The values for xmin, xmax, ymin and ymax are in world coordinates.
- function
nonuniformcellarray
(x, y, dimx::Int, dimy::Int, color)¶ nonuniformcellarray(x, y, dimx::Int, dimy::Int, color)
Display a two dimensional color index array with nonuniform cell sizes.
Parameters:
- x, y :
X and Y coordinates of the cell edges
- dimx, dimy :
X and Y dimension of the color index array
- color :
Color index array
The values for x and y are in world coordinates. x must contain dimx + 1 elements and y must contain dimy + 1 elements. The elements i and i+1 are respectively the edges of the i-th cell in X and Y direction.
- function
polarcellarray
(xorg::Real, yorg::Real, phimin::Real, phimax::Real, rmin::Real, rmax::Real, dimphi::Int, dimr::Int, color)¶ polarcellarray(xorg::Real, yorg::Real, phimin::Real, phimax::Real, rmin::Real, rmax::Real, imphi::Int, dimr::Int, color)
Display a two dimensional color index array mapped to a disk using polar coordinates.
Parameters:
- xorg :
X coordinate of the disk center in world coordinates
- yorg :
Y coordinate of the disk center in world coordinates
- phimin :
start angle of the disk sector in degrees
- phimax :
end angle of the disk sector in degrees
- rmin :
inner radius of the punctured disk in world coordinates
- rmax :
outer radius of the punctured disk in world coordinates
- dimiphi, dimr :
Phi (X) and iR (Y) dimension of the color index array
- color :
Color index array
The two dimensional color index array is mapped to the resulting image by interpreting the X-axis of the array as the angle and the Y-axis as the radius. The center point of the resulting disk is located at xorg, yorg and the radius of the disk is rmax.
- function
nonuniformpolarcellarray
(x, y, dimx::Int, dimy::Int, color)¶ nonuniformpolarcellarray(x, y, dimx::Int, dimy::Int, color)
Display a two dimensional color index array mapped to a disk using nonuniform polar coordinates.
Parameters:
- x, y :
X and Y coordinates of the cell edges
- dimx, dimy :
X and Y dimension of the color index array
- color :
Color index array
The two dimensional color index array is mapped to the resulting image by interpreting the X-axis of the array as the angle and the Y-axis as the radius.
- function
gdp
(x, y, primid, datrec)¶ gdp(x, y, primid, datrec)
Generates a generalized drawing primitive (GDP) of the type you specify, using specified points and any additional information contained in a data record.
Parameters:
- x :
A list containing the X coordinates
- y :
A list containing the Y coordinates
- primid :
Primitive identifier
- datrec :
Primitive data record
- function
path
(x, y, codes)¶ path(x, y, codes)
Draw paths using the given vertices and path codes.
Parameters:
- x :
A list containing the X coordinates
- y :
A list containing the Y coordinates
- codes :
A list containing the path codes
The values for x and y are in world coordinates. The codes describe several path primitives that can be used to create compound paths.
The following path codes are recognized:
Code
Description
x
y
M, m
move
x
y
L, l
line
x
y
Q, q
quadratic Bezier
x1, x2
y1, y2
C, c
cubic Bezier
x1, x2, x3
y1, y2, y3
A, a
arc
rx, a1, reserved
ry, a2, reserved
Z
close path
S
stroke
s
close path and stroke
f
close path and fill
F
close path, fill and stroke
Move: M, m
Moves the current position to (x, y). The new position is either absolute (M) or relative to the current position (m). The initial position of
path
is (0, 0).Example:
>>> path([0.5, -0.1], [0.2, 0.1], "Mm")
The first move command in this example moves the current position to the absolute coordinates (0.5, 0.2). The second move to performs a movement by (-0.1, 0.1) relative to the current position resulting in the point (0.4, 0.3).
Line: L, l
Draws a line from the current position to the given position (x, y). The end point of the line is either absolute (L) or relative to the current position (l). The current position is set to the end point of the line.
Example:
>>> path([0.1, 0.5, 0.0], [0.1, 0.1, 0.2], "MLlS")
The first line to command draws a straight line from the current position (0.1, 0.1) to the absolute position (0.5, 0.1) resulting in a horizontal line. The second line to command draws a vertical line relative to the current position resulting in the end point (0.5, 0.3).
Quadratic Bezier curve: Q, q
Draws a quadratic bezier curve from the current position to the end point (x2, y2) using (x1, y1) as the control point. Both points are either absolute (Q) or relative to the current position (q). The current position is set to the end point of the bezier curve.
Example:
>>> path([0.1, 0.3, 0.5, 0.2, 0.4], [0.1, 0.2, 0.1, 0.1, 0.0], "MQqS")
This example will generate two bezier curves whose start and end points are each located at y=0.1. As the control points are horizontally in the middle of each bezier curve with a higher y value both curves are symmetrical and bend slightly upwards in the middle. The current position is set to (0.9, 0.1) at the end.
Cubic Bezier curve: C, c
Draws a cubic bezier curve from the current position to the end point (x3, y3) using (x1, y1) and (x2, y2) as the control points. All three points are either absolute (C) or relative to the current position (c). The current position is set to the end point of the bezier curve.
Example:
>>> path( ... [0.1, 0.2, 0.3, 0.4, 0.1, 0.2, 0.3], ... [0.1, 0.2, 0.0, 0.1, 0.1, -0.1, 0.0], ... "MCcS" ... )
This example will generate two bezier curves whose start and end points are each located at y=0.1. As the control points are equally spaced along the x-axis and the first is above and the second is below the start and end points this creates a wave-like shape for both bezier curves. The current position is set to (0.8, 0.1) at the end.
Ellipctical arc: A, a
Draws an elliptical arc starting at the current position. The major axis of the ellipse is aligned with the x-axis and the minor axis is aligned with the y-axis of the plot. rx and ry are the ellipses radii along the major and minor axis. a1 and a2 define the start and end angle of the arc in radians. The current position is set to the end point of the arc. If a2 is greater than a1 the arc is drawn counter-clockwise, otherwise it is drawn clockwise. The a and A commands draw the same arc. The third coordinates of the x and y array are ignored and reserved for future use.
Examples:
>>> path([0.1, 0.2, -3.14159 / 2, 0.0], [0.1, 0.4, 3.14159 / 2, 0.0], "MAS")
This example draws an arc starting at (0.1, 0.1). As the start angle -pi/2 is smaller than the end angle pi/2 the arc is drawn counter-clockwise. In this case the right half of an ellipse with an x radius of 0.2 and a y radius of 0.4 is shown. Therefore the current position is set to (0.1, 0.9) at the end.
>>> path([0.1, 0.2, 3.14159 / 2, 0.0], [0.9, 0.4, -3.14159 / 2, 0.0], "MAS")
This examples draws the same arc as the previous one. The only difference is that the starting point is now at (0.1, 0.9) and the start angle pi/2 is greater than the end angle -pi/2 so that the ellipse arc is drawn clockwise. Therefore the current position is set to (0.1, 0.1) at the end.
Close path: Z
Closes the current path by connecting the current position to the target position of the last move command (m or M) with a straight line. If no move to was performed in this path it connects the current position to (0, 0). When the path is stroked this line will also be drawn.
Stroke path: S, s
Strokes the path with the current border width and border color (set with
gr.setborderwidth
andgr.setbordercolorind
). In case of s the path is closed beforehand, which is equivalent to ZS.Fill path: F, f
Fills the current path using the even-odd-rule using the current fill color. Filling a path implicitly closes the path. The fill color can be set using
gr.setfillcolorind
. In case of F the path is also stroked using the current border width and color afterwards.
- function
to_rgb_color
(z)¶
- function
polyline
(x, y, linewidth, line_z)¶
- function
polymarker
(x, y, markersize, marker_z)¶
- function
spline
(x, y, m, method)¶ spline(x, y, m, method)
Generate a cubic spline-fit, starting from the first data point and ending at the last data point.
Parameters:
- x :
A list containing the X coordinates
- y :
A list containing the Y coordinates
- m :
The number of points in the polygon to be drawn (m > len(x))
- method :
The smoothing method
The values for x and y are in world coordinates. The attributes that control the appearance of a spline-fit are linetype, linewidth and color index.
If method is > 0, then a generalized cross-validated smoothing spline is calculated. If method is 0, then an interpolating natural cubic spline is calculated. If method is < -1, then a cubic B-spline is calculated.
- function
gridit
(xd, yd, zd, nx, ny)¶
- function
setlinetype
(style::Int)¶ setlinetype(style::Int)
Specify the line style for polylines.
Parameters:
- style :
The polyline line style
The available line types are:
LINETYPE_SOLID
1
Solid line
LINETYPE_DASHED
2
Dashed line
LINETYPE_DOTTED
3
Dotted line
LINETYPE_DASHED_DOTTED
4
Dashed-dotted line
LINETYPE_DASH_2_DOT
-1
Sequence of one dash followed by two dots
LINETYPE_DASH_3_DOT
-2
Sequence of one dash followed by three dots
LINETYPE_LONG_DASH
-3
Sequence of long dashes
LINETYPE_LONG_SHORT_DASH
-4
Sequence of a long dash followed by a short dash
LINETYPE_SPACED_DASH
-5
Sequence of dashes double spaced
LINETYPE_SPACED_DOT
-6
Sequence of dots double spaced
LINETYPE_DOUBLE_DOT
-7
Sequence of pairs of dots
LINETYPE_TRIPLE_DOT
-8
Sequence of groups of three dots
- function
setlinewidth
(width::Real)¶ setlinewidth(width::Real)
Define the line width of subsequent polyline output primitives.
Parameters:
- width :
The polyline line width scale factor
The line width is calculated as the nominal line width generated on the workstation multiplied by the line width scale factor. This value is mapped by the workstation to the nearest available line width. The default line width is 1.0, or 1 times the line width generated on the graphics device.
- function
setlinecolorind
(color::Int)¶ setlinecolorind(color::Int)
Define the color of subsequent polyline output primitives.
Parameters:
- color :
The polyline color index (COLOR < 1256)
- function
setmarkertype
(mtype::Int)¶ setmarkertype(mtype::Int)
Specifiy the marker type for polymarkers.
Parameters:
- style :
The polymarker marker type
The available marker types are:
MARKERTYPE_DOT
1
Smallest displayable dot
MARKERTYPE_PLUS
2
Plus sign
MARKERTYPE_ASTERISK
3
Asterisk
MARKERTYPE_CIRCLE
4
Hollow circle
MARKERTYPE_DIAGONAL_CROSS
5
Diagonal cross
MARKERTYPE_SOLID_CIRCLE
-1
Filled circle
MARKERTYPE_TRIANGLE_UP
-2
Hollow triangle pointing upward
MARKERTYPE_SOLID_TRI_UP
-3
Filled triangle pointing upward
MARKERTYPE_TRIANGLE_DOWN
-4
Hollow triangle pointing downward
MARKERTYPE_SOLID_TRI_DOWN
-5
Filled triangle pointing downward
MARKERTYPE_SQUARE
-6
Hollow square
MARKERTYPE_SOLID_SQUARE
-7
Filled square
MARKERTYPE_BOWTIE
-8
Hollow bowtie
MARKERTYPE_SOLID_BOWTIE
-9
Filled bowtie
MARKERTYPE_HGLASS
-10
Hollow hourglass
MARKERTYPE_SOLID_HGLASS
-11
Filled hourglass
MARKERTYPE_DIAMOND
-12
Hollow diamond
MARKERTYPE_SOLID_DIAMOND
-13
Filled Diamond
MARKERTYPE_STAR
-14
Hollow star
MARKERTYPE_SOLID_STAR
-15
Filled Star
MARKERTYPE_TRI_UP_DOWN
-16
Hollow triangles pointing up and down overlaid
MARKERTYPE_SOLID_TRI_RIGHT
-17
Filled triangle point right
MARKERTYPE_SOLID_TRI_LEFT
-18
Filled triangle pointing left
MARKERTYPE_HOLLOW PLUS
-19
Hollow plus sign
MARKERTYPE_SOLID PLUS
-20
Solid plus sign
MARKERTYPE_PENTAGON
-21
Pentagon
MARKERTYPE_HEXAGON
-22
Hexagon
MARKERTYPE_HEPTAGON
-23
Heptagon
MARKERTYPE_OCTAGON
-24
Octagon
MARKERTYPE_STAR_4
-25
4-pointed star
MARKERTYPE_STAR_5
-26
5-pointed star (pentagram)
MARKERTYPE_STAR_6
-27
6-pointed star (hexagram)
MARKERTYPE_STAR_7
-28
7-pointed star (heptagram)
MARKERTYPE_STAR_8
-29
8-pointed star (octagram)
MARKERTYPE_VLINE
-30
verical line
MARKERTYPE_HLINE
-31
horizontal line
MARKERTYPE_OMARK
-32
o-mark
Polymarkers appear centered over their specified coordinates.
- function
setmarkersize
(mtype::Real)¶ setmarkersize(mtype::Real)
Specify the marker size for polymarkers.
Parameters:
- size :
Scale factor applied to the nominal marker size
The polymarker size is calculated as the nominal size generated on the graphics device multiplied by the marker size scale factor.
- function
setmarkercolorind
(color::Int)¶ setmarkercolorind(color::Int)
Define the color of subsequent polymarker output primitives.
Parameters:
- color :
The polymarker color index (COLOR < 1256)
- function
settextfontprec
(font::Int, precision::Int)¶ settextfontprec(font::Int, precision::Int)
Specify the text font and precision for subsequent text output primitives.
Parameters:
- font :
Text font (see tables below)
- precision :
Text precision (see table below)
The available text fonts are:
FONT_TIMES_ROMAN
101
FONT_TIMES_ITALIC
102
FONT_TIMES_BOLD
103
FONT_TIMES_BOLDITALIC
104
FONT_HELVETICA
105
FONT_HELVETICA_OBLIQUE
106
FONT_HELVETICA_BOLD
107
FONT_HELVETICA_BOLDOBLIQUE
108
FONT_COURIER
109
FONT_COURIER_OBLIQUE
110
FONT_COURIER_BOLD
111
FONT_COURIER_BOLDOBLIQUE
112
FONT_SYMBOL
113
FONT_BOOKMAN_LIGHT
114
FONT_BOOKMAN_LIGHTITALIC
115
FONT_BOOKMAN_DEMI
116
FONT_BOOKMAN_DEMIITALIC
117
FONT_NEWCENTURYSCHLBK_ROMAN
118
FONT_NEWCENTURYSCHLBK_ITALIC
119
FONT_NEWCENTURYSCHLBK_BOLD
120
FONT_NEWCENTURYSCHLBK_BOLDITALIC
121
FONT_AVANTGARDE_BOOK
122
FONT_AVANTGARDE_BOOKOBLIQUE
123
FONT_AVANTGARDE_DEMI
124
FONT_AVANTGARDE_DEMIOBLIQUE
125
FONT_PALATINO_ROMAN
126
FONT_PALATINO_ITALIC
127
FONT_PALATINO_BOLD
128
FONT_PALATINO_BOLDITALIC
129
FONT_ZAPFCHANCERY_MEDIUMITALIC
130
FONT_ZAPFDINGBATS
131
The available text precisions are:
TEXT_PRECISION_STRING
0
String precision (higher quality)
TEXT_PRECISION_CHAR
1
Character precision (medium quality)
TEXT_PRECISION_STROKE
2
Stroke precision (lower quality)
The appearance of a font depends on the text precision value specified. STRING, CHARACTER or STROKE precision allows for a greater or lesser realization of the text primitives, for efficiency. STRING is the default precision for GR and produces the highest quality output.
- function
setcharexpan
(factor::Real)¶ setcharexpan(factor::Real)
Set the current character expansion factor (width to height ratio).
Parameters:
- factor :
Text expansion factor applied to the nominal text width-to-height ratio
setcharexpan defines the width of subsequent text output primitives. The expansion factor alters the width of the generated characters, but not their height. The default text expansion factor is 1, or one times the normal width-to-height ratio of the text.
- function
setcharspace
(spacing::Real)¶
- function
settextcolorind
(color::Int)¶ settextcolorind(color::Int)
Sets the current text color index.
Parameters:
- color :
The text color index (COLOR < 1256)
settextcolorind defines the color of subsequent text output primitives. GR uses the default foreground color (black=1) for the default text color index.
- function
setcharheight
(height::Real)¶ setcharheight(height::Real)
Set the current character height.
Parameters:
- height :
Text height value
setcharheight defines the height of subsequent text output primitives. Text height is defined as a percentage of the default window. GR uses the default text height of 0.027 (2.7% of the height of the default window).
- function
inqcharheight
()¶
- function
setcharup
(ux::Real, uy::Real)¶ setcharup(ux::Real, uy::Real)
Set the current character text angle up vector.
Parameters:
- ux, uy :
Text up vector
setcharup defines the vertical rotation of subsequent text output primitives. The text up vector is initially set to (0, 1), horizontal to the baseline.
- function
settextpath
(path::Int)¶ settextpath(path::Int)
Define the current direction in which subsequent text will be drawn.
Parameters:
- path :
Text path (see table below)
TEXT_PATH_RIGHT
0
left-to-right
TEXT_PATH_LEFT
1
right-to-left
TEXT_PATH_UP
2
downside-up
TEXT_PATH_DOWN
3
upside-down
- function
settextalign
(horizontal::Int, vertical::Int)¶ settextalign(horizontal::Int, vertical::Int)
Set the current horizontal and vertical alignment for text.
Parameters:
- horizontal :
Horizontal text alignment (see the table below)
- vertical :
Vertical text alignment (see the table below)
settextalign specifies how the characters in a text primitive will be aligned in horizontal and vertical space. The default text alignment indicates horizontal left alignment and vertical baseline alignment.
TEXT_HALIGN_NORMAL
0
TEXT_HALIGN_LEFT
1
Left justify
TEXT_HALIGN_CENTER
2
Center justify
TEXT_HALIGN_RIGHT
3
Right justify
TEXT_VALIGN_NORMAL
0
TEXT_VALIGN_TOP
1
Align with the top of the characters
TEXT_VALIGN_CAP
2
Aligned with the cap of the characters
TEXT_VALIGN_HALF
3
Aligned with the half line of the characters
TEXT_VALIGN_BASE
4
Aligned with the base line of the characters
TEXT_VALIGN_BOTTOM
5
Aligned with the bottom line of the characters
- function
setfillintstyle
(style::Int)¶ setfillintstyle(style::Int)
Set the fill area interior style to be used for fill areas.
Parameters:
- style :
The style of fill to be used
setfillintstyle defines the interior style for subsequent fill area output primitives. The default interior style is HOLLOW.
HOLLOW
0
No filling. Just draw the bounding polyline
SOLID
1
Fill the interior of the polygon using the fill color index
PATTERN
2
Fill the interior of the polygon using the style index as a pattern index
HATCH
3
Fill the interior of the polygon using the style index as a cross-hatched style
- function
setfillstyle
(index::Int)¶ setfillstyle(index::Int)
Sets the fill style to be used for subsequent fill areas.
Parameters:
- index :
The fill style index to be used
setfillstyle specifies an index when PATTERN fill or HATCH fill is requested by the setfillintstyle function. If the interior style is set to PATTERN, the fill style index points to a device-independent pattern table. If interior style is set to HATCH the fill style index indicates different hatch styles. If HOLLOW or SOLID is specified for the interior style, the fill style index is unused.
- function
setfillcolorind
(color::Int)¶ setfillcolorind(color::Int)
Sets the current fill area color index.
Parameters:
- color :
The fill area color index (COLOR < 1256)
setfillcolorind defines the color of subsequent fill area output primitives. GR uses the default foreground color (black=1) for the default fill area color index.
- function
setcolorrep
(index::Int, red::Real, green::Real, blue::Real)¶ setcolorrep(index::Int, red::Real, green::Real, blue::Real)
setcolorrep allows to redefine an existing color index representation by specifying an RGB color triplet.
Parameters:
- index :
Color index in the range 0 to 1256
- red :
Red intensity in the range 0.0 to 1.0
- green :
Green intensity in the range 0.0 to 1.0
- blue:
Blue intensity in the range 0.0 to 1.0
- function
setscale
(options::Int)¶ setscale(options::Int)
setscale sets the type of transformation to be used for subsequent GR output primitives.
Parameters:
- options :
Scale specification (see Table below)
OPTION_X_LOG
Logarithmic X-axis
OPTION_Y_LOG
Logarithmic Y-axis
OPTION_Z_LOG
Logarithmic Z-axis
OPTION_FLIP_X
Flip X-axis
OPTION_FLIP_Y
Flip Y-axis
OPTION_FLIP_Z
Flip Z-axis
OPTION_X_LOG2
log2 scaled X-axis
OPTION_Y_LOG2
log2 scaled Y-axis
OPTION_Z_LOG2
log2 scaled Z-axis
OPTION_X_LN
ln scaled X-axis
OPTION_Y_LN
ln scaled Y-axis
OPTION_Z_LN
ln scaled Z-axis
setscale defines the current transformation according to the given scale specification which may be or’ed together using any of the above options. GR uses these options for all subsequent output primitives until another value is provided. The scale options are used to transform points from an abstract logarithmic or semi-logarithmic coordinate system, which may be flipped along each axis, into the world coordinate system.
Note: When applying a logarithmic transformation to a specific axis, the system assumes that the axes limits are greater than zero.
- function
inqscale
()¶
- function
setwindow
(xmin::Real, xmax::Real, ymin::Real, ymax::Real)¶ setwindow(xmin::Real, xmax::Real, ymin::Real, ymax::Real)
setwindow establishes a window, or rectangular subspace, of world coordinates to be plotted. If you desire log scaling or mirror-imaging of axes, use the SETSCALE function.
Parameters:
- xmin :
The left horizontal coordinate of the window (xmin < xmax).
- xmax :
The right horizontal coordinate of the window.
- ymin :
The bottom vertical coordinate of the window (ymin < ymax).
- ymax :
The top vertical coordinate of the window.
setwindow defines the rectangular portion of the World Coordinate space (WC) to be associated with the specified normalization transformation. The WC window and the Normalized Device Coordinates (NDC) viewport define the normalization transformation through which all output primitives are mapped. The WC window is mapped onto the rectangular NDC viewport which is, in turn, mapped onto the display surface of the open and active workstation, in device coordinates. By default, GR uses the range [0,1] x [0,1], in world coordinates, as the normalization transformation window.
- function
inqwindow
()¶
- function
setviewport
(xmin::Real, xmax::Real, ymin::Real, ymax::Real)¶ setviewport(xmin::Real, xmax::Real, ymin::Real, ymax::Real)
setviewport establishes a rectangular subspace of normalized device coordinates.
Parameters:
- xmin :
The left horizontal coordinate of the viewport.
- xmax :
The right horizontal coordinate of the viewport (0 <= xmin < xmax <= 1).
- ymin :
The bottom vertical coordinate of the viewport.
- ymax :
The top vertical coordinate of the viewport (0 <= ymin < ymax <= 1).
setviewport defines the rectangular portion of the Normalized Device Coordinate (NDC) space to be associated with the specified normalization transformation. The NDC viewport and World Coordinate (WC) window define the normalization transformation through which all output primitives pass. The WC window is mapped onto the rectangular NDC viewport which is, in turn, mapped onto the display surface of the open and active workstation, in device coordinates.
- function
inqviewport
()¶
- function
selntran
(transform::Int)¶ selntran(transform::Int)
selntran selects a predefined transformation from world coordinates to normalized device coordinates.
Parameters:
- transform :
A normalization transformation number.
0
Selects the identity transformation in which both the window and viewport have the range of 0 to 1
>= 1
Selects a normalization transformation as defined by setwindow and setviewport
- function
setclip
(indicator::Int)¶ setclip(indicator::Int)
Set the clipping indicator.
Parameters:
- indicator :
An indicator specifying whether clipping is on or off.
0
Clipping is off. Data outside of the window will be drawn.
1
Clipping is on. Data outside of the window will not be drawn.
setclip enables or disables clipping of the image drawn in the current window. Clipping is defined as the removal of those portions of the graph that lie outside of the defined viewport. If clipping is on, GR does not draw generated output primitives past the viewport boundaries. If clipping is off, primitives may exceed the viewport boundaries, and they will be drawn to the edge of the workstation window. By default, clipping is on.
- function
setwswindow
(xmin::Real, xmax::Real, ymin::Real, ymax::Real)¶ setwswindow(xmin::Real, xmax::Real, ymin::Real, ymax::Real)
Set the area of the NDC viewport that is to be drawn in the workstation window.
Parameters:
- xmin :
The left horizontal coordinate of the workstation window.
- xmax :
The right horizontal coordinate of the workstation window (0 <= xmin < xmax <= 1).
- ymin :
The bottom vertical coordinate of the workstation window.
- ymax :
The top vertical coordinate of the workstation window (0 <= ymin < ymax <= 1).
setwswindow defines the rectangular area of the Normalized Device Coordinate space to be output to the device. By default, the workstation transformation will map the range [0,1] x [0,1] in NDC onto the largest square on the workstation’s display surface. The aspect ratio of the workstation window is maintained at 1 to 1.
- function
setwsviewport
(xmin::Real, xmax::Real, ymin::Real, ymax::Real)¶ setwsviewport(xmin::Real, xmax::Real, ymin::Real, ymax::Real)
Define the size of the workstation graphics window in meters.
Parameters:
- xmin :
The left horizontal coordinate of the workstation viewport.
- xmax :
The right horizontal coordinate of the workstation viewport.
- ymin :
The bottom vertical coordinate of the workstation viewport.
- ymax :
The top vertical coordinate of the workstation viewport.
setwsviewport places a workstation window on the display of the specified size in meters. This command allows the workstation window to be accurately sized for a display or hardcopy device, and is often useful for sizing graphs for desktop publishing applications.
- function
createseg
(segment::Int)¶
- function
copyseg
(segment::Int)¶
- function
redrawseg
()¶
- function
setsegtran
(segment::Int, fx::Real, fy::Real, transx::Real, transy::Real, phi::Real, scalex::Real, scaley::Real)¶
- function
closeseg
()¶
- function
samplelocator
()¶
- function
emergencyclosegks
()¶
- function
updategks
()¶
- function
setspace
(zmin::Real, zmax::Real, rotation::Int, tilt::Int)¶ setspace(zmin::Real, zmax::Real, rotation::Int, tilt::Int)
Set the abstract Z-space used for mapping three-dimensional output primitives into the current world coordinate space.
Parameters:
- zmin :
Minimum value for the Z-axis.
- zmax :
Maximum value for the Z-axis.
- rotation :
Angle for the rotation of the X axis, in degrees.
- tilt :
Viewing angle of the Z axis in degrees.
setspace establishes the limits of an abstract Z-axis and defines the angles for rotation and for the viewing angle (tilt) of a simulated three-dimensional graph, used for mapping corresponding output primitives into the current window. These settings are used for all subsequent three-dimensional output primitives until other values are specified. Angles of rotation and viewing angle must be specified between 0° and 90°.
- function
textext
(x::Real, y::Real, string)¶ textext(x::Real, y::Real, string)
Draw a text at position x, y using the current text attributes. Strings can be defined to create basic mathematical expressions and Greek letters.
Parameters:
- x :
The X coordinate of starting position of the text string
- y :
The Y coordinate of starting position of the text string
- string :
The text to be drawn
The values for X and Y are in normalized device coordinates. The attributes that control the appearance of text are text font and precision, character expansion factor, character spacing, text color index, character height, character up vector, text path and text alignment.
The character string is interpreted to be a simple mathematical formula. The following notations apply:
Subscripts and superscripts: These are indicated by carets (‘^’) and underscores (‘_’). If the sub/superscript contains more than one character, it must be enclosed in curly braces (‘{}’).
Fractions are typeset with A ‘/’ B, where A stands for the numerator and B for the denominator.
To include a Greek letter you must specify the corresponding keyword after a backslash (‘’) character. The text translator produces uppercase or lowercase Greek letters depending on the case of the keyword.
Letter
Keyword
Α α
alpha
Β β
beta
Γ γ
gamma
Δ δ
delta
Ε ε
epsilon
Ζ ζ
zeta
Η η
eta
Θ θ
theta
Ι ι
iota
Κ κ
kappa
Λ λ
lambda
Μ μ
mu
Ν ν
nu
Ξ ξ
xi
Ο ο
omicron
Π π
pi
Ρ ρ
rho
Σ σ
sigma
Τ τ
tau
Υ υ
upsilon
Φ φ
phi
Χ χ
chi
Ψ ψ
psi
Ω ω
omega
For more sophisticated mathematical formulas, you should use the gr.mathtex function.
- function
inqtextext
(x::Real, y::Real, string)¶
- function
axes2d
(x_tick::Real, y_tick::Real, x_org::Real, y_org::Real, major_x::Int, major_y::Int, tick_size::Real)¶ axes2d(x_tick::Real, y_tick::Real, x_org::Real, y_org::Real, major_x::Int, major_y::Int, tick_size::Real)
Draw X and Y coordinate axes with linearly and/or logarithmically spaced tick marks.
Parameters:
- x_tick, y_tick :
The interval between minor tick marks on each axis.
- x_org, y_org :
The world coordinates of the origin (point of intersection) of the X and Y axes.
- major_x, major_y :
Unitless integer values specifying the number of minor tick intervals between major tick marks. Values of 0 or 1 imply no minor ticks. Negative values specify no labels will be drawn for the associated axis.
- tick_size :
The length of minor tick marks specified in a normalized device coordinate unit. Major tick marks are twice as long as minor tick marks. A negative value reverses the tick marks on the axes from inward facing to outward facing (or vice versa).
Tick marks are positioned along each axis so that major tick marks fall on the axes origin (whether visible or not). Major tick marks are labeled with the corresponding data values. Axes are drawn according to the scale of the window. Axes and tick marks are drawn using solid lines; line color and width can be modified using the setlinetype and setlinewidth functions. Axes are drawn according to the linear or logarithmic transformation established by the setscale function.
- function
axes
(x_tick::Real, y_tick::Real, x_org::Real, y_org::Real, major_x::Int, major_y::Int, tick_size::Real)¶
- function
axeslbl
(x_tick::Real, y_tick::Real, x_org::Real, y_org::Real, major_x::Int, major_y::Int, tick_size::Real, fx::Function, fy::Function)¶ function axeslbl(x_tick::Real, y_tick::Real, x_org::Real, y_org::Real, major_x::Int, major_y::Int, tick_size::Real, fpx::Function, fpy::Function)
Draw X and Y coordinate axes with linearly and/or logarithmically spaced tick marks.
Tick marks are positioned along each axis so that major tick marks fall on the axes origin (whether visible or not). Major tick marks are labeled with the corresponding data values. Axes are drawn according to the scale of the window. Axes and tick marks are drawn using solid lines; line color and width can be modified using the setlinetype and setlinewidth functions. Axes are drawn according to the linear or logarithmic transformation established by the setscale function.
Parameters:
- x_tick, y_tick :
The interval between minor tick marks on each axis.
- x_org, y_org :
The world coordinates of the origin (point of intersection) of the X and Y axes.
- major_x, major_y :
Unitless integer values specifying the number of minor tick intervals between major tick marks. Values of 0 or 1 imply no minor ticks. Negative values specify no labels will be drawn for the associated axis.
- tick_size :
The length of minor tick marks specified in a normalized device coordinate unit. Major tick marks are twice as long as minor tick marks. A negative value reverses the tick marks on the axes from inward facing to outward facing (or vice versa).
- fx, fy :
Functions that returns a label for a given tick on the X or Y axis. Those functions should have the following arguments:
- x, y :
Normalized device coordinates of the label in X and Y directions.
- svalue :
Internal string representation of the text drawn at (x,y).
- value :
Floating point representation of the label drawn at (x,y).
- function
grid
(x_tick::Real, y_tick::Real, x_org::Real, y_org::Real, major_x::Int, major_y::Int)¶ grid(x_tick::Real, y_tick::Real, x_org::Real, y_org::Real, major_x::Int, major_y::Int)
Draw a linear and/or logarithmic grid.
Parameters:
- x_tick, y_tick :
The length in world coordinates of the interval between minor grid lines.
- x_org, y_org :
The world coordinates of the origin (point of intersection) of the grid.
- major_x, major_y :
Unitless integer values specifying the number of minor grid lines between major grid lines. Values of 0 or 1 imply no grid lines.
Major grid lines correspond to the axes origin and major tick marks whether visible or not. Minor grid lines are drawn at points equal to minor tick marks. Major grid lines are drawn using black lines and minor grid lines are drawn using gray lines.
- function
grid3d
(x_tick::Real, y_tick::Real, z_tick::Real, x_org::Real, y_org::Real, z_org::Real, major_x::Int, major_y::Int, major_z::Int)¶
- function
verrorbars
(px, py, e1, e2)¶ verrorbars(px, py, e1, e2)
Draw a standard vertical error bar graph.
Parameters:
- px :
A list of length N containing the X coordinates
- py :
A list of length N containing the Y coordinates
- e1 :
The absolute values of the lower error bar data
- e2 :
The absolute values of the upper error bar data
- function
herrorbars
(px, py, e1, e2)¶ herrorbars(px, py, e1, e2)
Draw a standard horizontal error bar graph.
Parameters:
- px :
A list of length N containing the X coordinates
- py :
A list of length N containing the Y coordinates
- e1 :
The absolute values of the lower error bar data
- e2 :
The absolute values of the upper error bar data
- function
polyline3d
(px, py, pz)¶ polyline3d(px, py, pz)
Draw a 3D curve using the current line attributes, starting from the first data point and ending at the last data point.
Parameters:
- x :
A list of length N containing the X coordinates
- y :
A list of length N containing the Y coordinates
- z :
A list of length N containing the Z coordinates
The values for x, y and z are in world coordinates. The attributes that control the appearance of a polyline are linetype, linewidth and color index.
- function
polymarker3d
(px, py, pz)¶ polymarker3d(px, py, pz)
Draw marker symbols centered at the given 3D data points.
Parameters:
- x :
A list of length N containing the X coordinates
- y :
A list of length N containing the Y coordinates
- z :
A list of length N containing the Z coordinates
The values for x, y and z are in world coordinates. The attributes that control the appearance of a polymarker are marker type, marker size scale factor and color index.
- function
axes3d
(x_tick::Real, y_tick::Real, z_tick::Real, x_org::Real, y_org::Real, z_org::Real, major_x::Int, major_y::Int, major_z::Int, tick_size::Real)¶
- function
settitles3d
(x_title, y_title, z_title)¶ settitles3d(x_title, y_title, z_title)
Set axis titles to be displayed in subsequent axes calls.
Parameters:
- x_title, y_title, z_title :
The text to be displayed on each axis
- function
titles3d
(x_title, y_title, z_title)¶ titles3d(x_title, y_title, z_title)
Display axis titles just outside of their respective axes.
Parameters:
- x_title, y_title, z_title :
The text to be displayed on each axis
- function
surface
(px, py, pz, option::Int)¶ surface(px, py, pz, option::Int)
Draw a three-dimensional surface plot for the given data points.
Parameters:
- x :
A list containing the X coordinates
- y :
A list containing the Y coordinates
- z :
A list of length len(x) * len(y) or an appropriately dimensioned array containing the Z coordinates
- option :
Surface display option (see table below)
x and y define a grid. z is a singly dimensioned array containing at least nx * ny data points. Z describes the surface height at each point on the grid. Data is ordered as shown in the following table:
LINES
0
Use X Y polylines to denote the surface
MESH
1
Use a wire grid to denote the surface
FILLED_MESH
2
Applies an opaque grid to the surface
Z_SHADED_MESH
3
Applies Z-value shading to the surface
COLORED_MESH
4
Applies a colored grid to the surface
CELL_ARRAY
5
Applies a grid of individually-colored cells to the surface
SHADED_MESH
6
Applies light source shading to the 3-D surface
- function
contour
(px, py, h, pz, major_h::Int)¶ contour(px, py, h, pz, major_h::Int)
Draw contours of a three-dimensional data set whose values are specified over a rectangular mesh. Contour lines may optionally be labeled.
Parameters:
- x :
A list containing the X coordinates
- y :
A list containing the Y coordinates
- h :
A list containing the Z coordinate for the height values
- z :
A list of length len(x) * len(y) or an appropriately dimensioned array containing the Z coordinates
- major_h :
Directs GR to label contour lines. For example, a value of 3 would label every third line. A value of 1 will label every line. A value of 0 produces no labels. To produce colored contour lines, add an offset of 1000 to major_h.
- function
contourf
(px, py, h, pz, major_h::Int)¶ contourf(px, py, h, pz, major_h::Int)
Draw filled contours of a three-dimensional data set whose values are specified over a rectangular mesh.
Parameters:
- x :
A list containing the X coordinates
- y :
A list containing the Y coordinates
- h :
A list containing the Z coordinate for the height values
- z :
A list of length len(x) * len(y) or an appropriately dimensioned array containing the Z coordinates
- major_h :
(intended for future use)
- function
hexbin
(x, y, nbins)¶
- function
setcolormap
(index::Int)¶
- function
colorbar
()¶
- function
inqcolor
(color::Int)¶
- function
inqcolorfromrgb
(red::Real, green::Real, blue::Real)¶
- function
hsvtorgb
(h::Real, s::Real, v::Real)¶
- function
tick
(amin::Real, amax::Real)¶
- function
validaterange
(amin::Real, amax::Real)¶
- function
adjustlimits
(amin::Real, amax::Real)¶
- function
adjustrange
(amin::Real, amax::Real)¶
- function
beginprint
(pathname)¶ beginprint(pathname)
Open and activate a print device.
Parameters:
- pathname :
Filename for the print device.
beginprint opens an additional graphics output device. The device type is obtained from the given file extension. The following file types are supported:
.ps, .eps
PostScript
.pdf
Portable Document Format
.bmp
Windows Bitmap (BMP)
.jpeg, .jpg
JPEG image file
.png
Portable Network Graphics file (PNG)
.tiff, .tif
Tagged Image File Format (TIFF)
.fig
Xfig vector graphics file
.svg
Scalable Vector Graphics
.wmf
Windows Metafile
- function
beginprintext
(pathname, mode, fmt, orientation)¶ beginprintext(pathname, mode, fmt, orientation)
Open and activate a print device with the given layout attributes.
Parameters:
- pathname :
Filename for the print device.
- mode :
Output mode (Color, GrayScale)
- fmt :
Output format (see table below)
- orientation :
Page orientation (Landscape, Portait)
The available formats are:
A4
0.210 x 0.297
B5
0.176 x 0.250
Letter
0.216 x 0.279
Legal
0.216 x 0.356
Executive
0.191 x 0.254
A0
0.841 x 1.189
A1
0.594 x 0.841
A2
0.420 x 0.594
A3
0.297 x 0.420
A5
0.148 x 0.210
A6
0.105 x 0.148
A7
0.074 x 0.105
A8
0.052 x 0.074
A9
0.037 x 0.052
B0
1.000 x 1.414
B1
0.500 x 0.707
B10
0.031 x 0.044
B2
0.500 x 0.707
B3
0.353 x 0.500
B4
0.250 x 0.353
B6
0.125 x 0.176
B7
0.088 x 0.125
B8
0.062 x 0.088
B9
0.044 x 0.062
C5E
0.163 x 0.229
Comm10E
0.105 x 0.241
DLE
0.110 x 0.220
Folio
0.210 x 0.330
Ledger
0.432 x 0.279
Tabloid
0.279 x 0.432
- function
endprint
()¶
- function
ndctowc
(x::Real, y::Real)¶
- function
wctondc
(x::Real, y::Real)¶
- function
wc3towc
(x::Real, y::Real, z::Real)¶
- function
drawrect
(xmin::Real, xmax::Real, ymin::Real, ymax::Real)¶ drawrect(xmin::Real, xmax::Real, ymin::Real, ymax::Real)
Draw a rectangle using the current line attributes.
Parameters:
- xmin :
Lower left edge of the rectangle
- xmax :
Lower right edge of the rectangle
- ymin :
Upper left edge of the rectangle
- ymax :
Upper right edge of the rectangle
- function
fillrect
(xmin::Real, xmax::Real, ymin::Real, ymax::Real)¶ fillrect(xmin::Real, xmax::Real, ymin::Real, ymax::Real)
Draw a filled rectangle using the current fill attributes.
Parameters:
- xmin :
Lower left edge of the rectangle
- xmax :
Lower right edge of the rectangle
- ymin :
Upper left edge of the rectangle
- ymax :
Upper right edge of the rectangle
- function
drawarc
(xmin::Real, xmax::Real, ymin::Real, ymax::Real, a1::Real, a2::Real)¶ drawarc(xmin::Real, xmax::Real, ymin::Real, ymax::Real, a1::Real, a2::Real)
Draw a circular or elliptical arc covering the specified rectangle.
Parameters:
- xmin :
Lower left edge of the rectangle
- xmax :
Lower right edge of the rectangle
- ymin :
Upper left edge of the rectangle
- ymax :
Upper right edge of the rectangle
- a1 :
The start angle
- a2 :
The end angle
The resulting arc begins at a1 and ends at a2 degrees. Angles are interpreted such that 0 degrees is at the 3 o’clock position. The center of the arc is the center of the given rectangle.
- function
fillarc
(xmin::Real, xmax::Real, ymin::Real, ymax::Real, a1::Real, a2::Real)¶ fillarc(xmin::Real, xmax::Real, ymin::Real, ymax::Real, a1::Real, a2::Real)
Fill a circular or elliptical arc covering the specified rectangle.
Parameters:
- xmin :
Lower left edge of the rectangle
- xmax :
Lower right edge of the rectangle
- ymin :
Upper left edge of the rectangle
- ymax :
Upper right edge of the rectangle
- a1 :
The start angle
- a2 :
The end angle
The resulting arc begins at a1 and ends at a2 degrees. Angles are interpreted such that 0 degrees is at the 3 o’clock position. The center of the arc is the center of the given rectangle.
- function
drawpath
(points, codes, fill::Int)¶ drawpath(points, codes, fill::Int)
Draw simple and compound outlines consisting of line segments and bezier curves.
Parameters:
- points :
(N, 2) array of (x, y) vertices
- codes :
N-length array of path codes
- fill :
A flag indication whether resulting path is to be filled or not
The following path codes are recognized:
STOP
end the entire path
MOVETO
move to the given vertex
LINETO
draw a line from the current position to the given vertex
CURVE3
draw a quadratic Bézier curve
CURVE4
draw a cubic Bézier curve
CLOSEPOLY
draw a line segment to the start point of the current path
- function
setarrowstyle
(style::Int)¶ setarrowstyle(style::Int)
Set the arrow style to be used for subsequent arrow commands.
Parameters:
- style :
The arrow style to be used
setarrowstyle defines the arrow style for subsequent arrow primitives. The default arrow style is 1.
1
simple, single-ended
2
simple, single-ended, acute head
3
hollow, single-ended
4
filled, single-ended
5
triangle, single-ended
6
filled triangle, single-ended
7
kite, single-ended
8
filled kite, single-ended
9
simple, double-ended
10
simple, double-ended, acute head
11
hollow, double-ended
12
filled, double-ended
13
triangle, double-ended
14
filled triangle, double-ended
15
kite, double-ended
16
filled kite, double-ended
17
double line, single-ended
18
double line, double-ended
- function
setarrowsize
(size::Real)¶ setarrowsize(size::Real)
Set the arrow size to be used for subsequent arrow commands.
Parameters:
- size :
The arrow size to be used
setarrowsize defines the arrow size for subsequent arrow primitives. The default arrow size is 1.
- function
drawarrow
(x1::Real, y1::Real, x2::Real, y2::Real)¶ drawarrow(x1::Real, y1::Real, x2::Real, y2::Real)
Draw an arrow between two points.
Parameters:
- x1, y1 :
Starting point of the arrow (tail)
- x2, y2 :
Head of the arrow
Different arrow styles (angles between arrow tail and wing, optionally filled heads, double headed arrows) are available and can be set with the setarrowstyle function.
- function
readimage
(path)¶
- function
drawimage
(xmin::Real, xmax::Real, ymin::Real, ymax::Real, width::Int, height::Int, data, model::Int = 0)¶ drawimage(xmin::Real, xmax::Real, ymin::Real, ymax::Real, width::Int, height::Int, data, model::Int = 0)
Draw an image into a given rectangular area.
Parameters:
- xmin, ymin :
First corner point of the rectangle
- xmax, ymax :
Second corner point of the rectangle
- width, height :
The width and the height of the image
- data :
An array of color values dimensioned width by height
- model :
Color model (default=0)
The available color models are:
MODEL_RGB
0
AABBGGRR
MODEL_HSV
1
AAVVSSHH
The points (xminx, ymin) and (xmax, ymax) are world coordinates defining diagonally opposite corner points of a rectangle. This rectangle is divided into width by height cells. The two-dimensional array data specifies colors for each cell.
- function
importgraphics
(path)¶
- function
setshadow
(offsetx::Real, offsety::Real, blur::Real)¶ setshadow(offsetx::Real, offsety::Real, blur::Real)
setshadow allows drawing of shadows, realized by images painted underneath, and offset from, graphics objects such that the shadow mimics the effect of a light source cast on the graphics objects.
Parameters:
- offsetx :
An x-offset, which specifies how far in the horizontal direction the shadow is offset from the object
- offsety :
A y-offset, which specifies how far in the vertical direction the shadow is offset from the object
- blur :
A blur value, which specifies whether the object has a hard or a diffuse edge
- function
settransparency
(alpha::Real)¶ settransparency(alpha::Real)
Set the value of the alpha component associated with GR colors.
Parameters:
- alpha :
An alpha value (0.0 - 1.0)
- function
setcoordxform
(mat)¶ setcoordxform(mat)
Change the coordinate transformation according to the given matrix.
Parameters:
- mat[3][2] :
2D transformation matrix
- function
begingraphics
(path)¶ begingraphics(path)
Open a file for graphics output.
Parameters:
- path :
Filename for the graphics file.
begingraphics allows to write all graphics output into a XML-formatted file until the endgraphics functions is called. The resulting file may later be imported with the importgraphics function.
- function
endgraphics
()¶
- function
getgraphics
()¶
- function
drawgraphics
(string)¶
- function
startlistener
()¶
- function
mathtex
(x::Real, y::Real, string)¶ mathtex(x::Real, y::Real, string)
Generate a character string starting at the given location. Strings can be defined to create mathematical symbols and Greek letters using LaTeX syntax.
Parameters:
- x, y :
Position of the text string specified in world coordinates
- string :
The text string to be drawn
- function
inqmathtex
(x, y, string)¶
- type
SVG
¶
- type
PNG
¶
- type
HTML
¶
- function
show
(io::IO, ::#= none:3673 =# @MIME_str "image/svg+xml", x::SVG)¶
- function
show
(io::IO, ::#= none:3674 =# @MIME_str "image/png", x::PNG)¶
- function
show
(io::IO, ::#= none:3675 =# @MIME_str "text/html", x::HTML)¶
- type
c_tick_t
¶
- type
c_tick_label_t
¶
- type
GRTick
¶
- type
GRTickLabel
¶
- function
_readfile
(path)¶
- function
isinline
()¶
- function
displayname
()¶
- function
inline
(mime = "svg", scroll = true)¶
- function
reset
()¶
- function
show
()¶
- function
setregenflags
(flags = 0)¶
- function
inqregenflags
()¶
- function
savestate
()¶
- function
restorestate
()¶
- function
selectcontext
(context::Int)¶
- function
destroycontext
(context::Int)¶
- function
uselinespec
(linespec)¶
- function
delaunay
(x, y)¶
- function
interp2
(X, Y, Z, Xq, Yq, method::Int = 0, extrapval = 0)¶
- function
trisurface
(x, y, z)¶ trisurface(x, y, z)
Draw a triangular surface plot for the given data points.
Parameters:
- x :
A list containing the X coordinates
- y :
A list containing the Y coordinates
- z :
A list containing the Z coordinates
- function
tricontour
(x, y, z, levels)¶ tricontour(x, y, z, levels)
Draw a contour plot for the given triangle mesh.
Parameters:
- x :
A list containing the X coordinates
- y :
A list containing the Y coordinates
- z :
A list containing the Z coordinates
- levels :
A list containing the contour levels
- function
gradient
(x, y, z)¶
- function
quiver
(x, y, u, v, color::Bool = false)¶
- function
reducepoints
(xd, yd, n)¶
- function
version
()¶
- function
check_for_updates
()¶
- function
openmeta
(target = 0, device = "localhost", port = 8002)¶
- function
sendmeta
(handle, string::AbstractString)¶
- function
sendmetaref
(handle, key::AbstractString, fmt::Char, data, len = -1)¶
- function
recvmeta
(handle, args = C_NULL)¶
- function
plotmeta
(args)¶
- function
deletemeta
(args)¶
- function
closemeta
(handle)¶
- function
shadepoints
(x, y; dims = [1200, 1200], xform = 1)¶
- function
shadelines
(x, y; dims = [1200, 1200], xform = 1)¶
- function
setcolormapfromrgb
(r, g, b; positions = Nothing)¶
- function
panzoom
(x, y, zoom)¶
- function
setborderwidth
(width::Real)¶ setborderwidth(width::Real)
Define the border width of subsequent path output primitives.
Parameters:
- width :
The border width scale factor
- function
setbordercolorind
(color::Int)¶ setbordercolorind(color::Int)
Define the color of subsequent path output primitives.
Parameters:
- color :
The border color index (COLOR < 1256)
- function
setprojectiontype
(type::Int)¶
- function
setperspectiveprojection
(near_plane::Real, far_plane::Real, fov::Real)¶
- function
setorthographicprojection
(left::Real, right::Real, bottom::Real, top::Real, near_plane::Real, far_plane::Real)¶
- function
settransformationparameters
(camera_pos_x::Real, camera_pos_y::Real, camera_pos_z::Real, up_x::Real, up_y::Real, up_z::Real, focus_point_x::Real, focus_point_y::Real, focus_point_z::Real)¶
- function
setresamplemethod
(method::UInt32)¶
- function
setwindow3d
(xmin::Real, xmax::Real, ymin::Real, ymax::Real, zmin::Real, zmax::Real)¶
- function
setspace3d
(rot::Real, tilt::Real, fov::Real, dist::Real)¶
- function
text3d
(x::Real, y::Real, z::Real, string, axis::Int)¶
- function
inqtext3d
(x::Real, y::Real, z::Real, string, axis::Int)¶
- function
settextencoding
(encoding)¶
- function
inqtextencoding
()¶
- function
loadfont
(name::String)¶
- function
inqvpsize
()¶
- function
setpicturesizeforvolume
(width::Int, height::Int)¶
- function
inqtransformationparameters
()¶
- function
polygonmesh3d
(px, py, pz, connections, colors)¶
- function
setscientificformat
(format_option)¶
- function
setresizebehaviour
(flag)¶
- function
inqprojectiontype
()¶
- function
beginselection
(index, type)¶
- function
endselection
()¶
- function
moveselection
(x, y)¶
- function
setmathfont
(font::Int)¶
- function
inqmathfont
()¶
- function
setclipregion
(region::Int)¶
- function
inqclipregion
()¶
- function
setclipsector
(start_angle::Real, end_angle::Real)¶
- function
inqclipsector
()¶
- function
getformat
(origin::Real, amin::Real, amax::Real, tick::Real, major::Int)¶
- function
ftoa
(value::Real, format::Vector{Int32})¶
- function
axis
(which::Char; min::Real = NaN, max::Real = NaN, tick::Real = NaN, org::Real = NaN, position::Real = NaN, major_count::Int = 1, ticks::Union{Vector{GRTick}, Nothing} = nothing, tick_size::Real = NaN, tick_labels::Union{Vector{GRTickLabel}, Nothing} = nothing, label_position::Real = NaN, draw_axis_line::Int = 1)¶
- function
to_c_axis
(axis::GRAxis)¶
- function
drawaxis
(which::Char, axis::GRAxis)¶
- function
drawaxes
(x_axis::Union{GRAxis, Nothing}, y_axis::Union{GRAxis, Nothing}, options::Int = (AXES_SIMPLE_AXES | AXES_TWIN_AXES) | AXES_WITH_GRID)¶
- function