curveGE | R Documentation |
curveGE
is used to draw the Gielis curve.
curveGE(expr, P, phi = seq(0, 2*pi, len = 2000),
m = 1, simpver = NULL, nval = 1,
fig.opt = FALSE, deform.fun = NULL, Par = NULL,
xlim = NULL, ylim = NULL, unit = NULL, main="")
expr |
the original (or twin) Gielis equation or one of its simplified versions. |
P |
the three location parameters and the parameters of the original (or twin) Gielis equation or one of its simplified versions. |
phi |
the given polar angles at which we want to draw the Gielis curve. |
m |
the given |
simpver |
an optional argument to use the simplfied version of the original (or twin) Gielis equation. |
nval |
the specified value for |
fig.opt |
an optional argument to draw the Gielis curve. |
deform.fun |
the deformation function used to describe the deviation from a theoretical Gielis curve. |
Par |
the parameter(s) of the deformation function. |
xlim |
the range of the |
ylim |
the range of the |
unit |
the units of the |
main |
the main title of the figure. |
The first three elements of P
are location parameters. The first two are the planar coordinates of the transferred polar point,
and the third is the angle between the major axis of the curve and the x
-axis. The other arguments in P
(except these first three location parameters), m
, simpver
, and nval
should correspond
to expr
(i.e., GE
or TGE
).
Please note the differences in the simplified version number and the
number of parameters between GE
and TGE
.
deform.fun
should take the form as: deform.fun <- function(Par, z){...}
, where z
is
a two-dimensional matrix related to the x
and y
values.
And the return value of deform.fun
should be a list
with two variables x
and y
.
x |
the |
y |
the |
r |
the polar radii of the Gielis curve corresponding to the given polar angles |
simpver
in GE
is different from that in TGE
.
Peijian Shi pjshi@njfu.edu.cn, Johan Gielis johan.gielis@uantwerpen.be, Brady K. Quinn Brady.Quinn@dfo-mpo.gc.ca.
Gielis, J. (2003) A generic geometric transformation that unifies a wide range of natural and abstract shapes. American Journal of Botany 90, 333-338. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.3732/ajb.90.3.333")}
Li, Y., Quinn, B.K., Gielis, J., Li, Y., Shi, P. (2022) Evidence that supertriangles exist in nature from the vertical projections of Koelreuteria paniculata fruit. Symmetry 14, 23. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.3390/sym14010023")}
Shi, P., Gielis, J., Niklas, K.J. (2022) Comparison of a universal (but complex) model for avian egg
shape with a simpler model. Annals of the New York Academy of Sciences 1514, 34-
42. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1111/nyas.14799")}
Shi, P., Gielis, J., Quinn, B.K., Niklas, K.J., Ratkowsky, D.A., Schrader, J., Ruan, H.,
Wang, L., Niinemets, Ü. (2022) 'biogeom': An R package for simulating and fitting natural
shapes. Annals of the New York Academy of Sciences 1516, 123-
134. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1111/nyas.14862")}
Shi, P., Ratkowsky, D.A., Gielis, J. (2020) The generalized Gielis geometric equation and its application. Symmetry 12, 645. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.3390/sym12040645")}
Shi, P., Xu, Q., Sandhu, H.S., Gielis, J., Ding, Y., Li, H., Dong, X. (2015) Comparison of dwarf bamboos (Indocalamus sp.) leaf parameters to determine relationship between spatial density of plants and total leaf area per plant. Ecology and Evolution 5, 4578-4589. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1002/ece3.1728")}
areaGE
, fitGE
, GE
, TGE
GE.par <- c(2, 1, 4, 6, 3)
phi.vec <- seq(0, 2*pi, len=2000)
r.theor <- GE(P=GE.par, phi=phi.vec, m=5)
dev.new()
plot( phi.vec, r.theor, cex.lab=1.5, cex.axis=1.5,
xlab=expression(italic(phi)), ylab=expression(italic("r")),
type="l", col=4 )
curve.par <- c(1, 1, pi/4, GE.par)
GE.res <- curveGE(GE, P=curve.par, fig.opt=TRUE, deform.fun=NULL, Par=NULL, m=5)
# GE.res$r
GE.res <- curveGE( GE, P=c(0, 0, 0, 2, 4, 20), m=1, simpver=1, fig.opt=TRUE )
# GE.res$r
GE.res <- curveGE( GE, P=c(1, 1, pi/4, 2, 1, 3), m=5, simpver=1, fig.opt=TRUE )
# GE.res$r
GE.res <- curveGE( GE, P=c(1, 1, pi/4, 2, 1, 3), m=2, simpver=1, fig.opt=TRUE )
# GE.res$r
GE.res <- curveGE( GE, P=c(1, 1, pi/4, 2, 0.05), m=1, simpver=2, fig.opt=TRUE )
# GE.res$r
GE.res <- curveGE( GE, P=c(1, 1, pi/4, 2), m=4, simpver=3, nval=2, fig.opt=TRUE )
# GE.res$r
GE.res <- curveGE( GE, P=c(1, 1, pi/4, 2, 0.6), m=4, simpver=8, nval=2, fig.opt=TRUE )
# GE.res$r
graphics.off()
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.