Plot the polytope (bounded convex set) of a linear mathematical program
plotPolytope2D(
A,
b,
obj = NULL,
type = rep("c", ncol(A)),
nonneg = rep(TRUE, ncol(A)),
crit = "max",
faces = rep("c", ncol(A)),
plotFaces = TRUE,
plotFeasible = TRUE,
plotOptimum = FALSE,
latex = FALSE,
labels = NULL,
...
)
A ggplot
object.
The constraint matrix.
Right hand side.
A vector with objective coefficients.
A character vector of same length as number of variables. If entry k is 'i' variable \(k\) must be integer and if 'c' continuous.
A boolean vector of same length as number of variables. If entry k is TRUE then variable k must be non-negative.
Either max or min (only used if add the iso-profit line)
A character vector of same length as number of variables. If entry k is 'i' variable \(k\) must be integer and if 'c' continuous. Useful if e.g. want to show the linear relaxation of an IP.
If True
then plot the faces.
If True
then plot the feasible points/segments
(relevant for ILP/MILP).
Show the optimum corner solution point (if alternative solutions only one is shown) and add the iso-profit line.
If True
make latex math labels for TikZ.
If NULL
don't add any labels. If 'n' no labels but show the points. If equal
coord
add coordinates to the points. Otherwise number all points from one.
Further arguments passed on the the ggplot
plotting functions. This must be done as
lists. Currently the following arguments are supported:
argsFaces
: A list of arguments for plotHull2D
.
argsFeasible
: A list of arguments for ggplotl2
functions:
geom_point
: A list of arguments for ggplot2::geom_point
.
geom_line
: A list of arguments for ggplot2::geom_line
.
argsLabels
: A list of arguments for ggplotl2
functions:
geom_text
: A list of arguments for ggplot2::geom_text
.
argsOptimum
:
geom_point
: A list of arguments for ggplot2::geom_point
.
geom_abline
: A list of arguments for ggplot2::geom_abline
.
geom_label
: A list of arguments for ggplot2::geom_label
.
argsTheme
: A list of arguments for ggplot2::theme
.
Lars Relund lars@relund.dk
plotPolytope()
for examples.