Plot scores of genotypes and environments in different graphical interpretations.

plot_scores(
x,
var = 1,
type = 1,
repel = TRUE,
polygon = FALSE,
title = TRUE,
plot_theme = theme_metan(),
axis.expand = 1.1,
x.lim = NULL,
y.lim = NULL,
x.breaks = waiver(),
y.breaks = waiver(),
x.lab = NULL,
y.lab = NULL,
shape.gen = 21,
shape.env = 23,
size.shape = 2.2,
size.bor.tick = 0.3,
size.tex.lab = 12,
size.tex.pa = 3.5,
size.line = 0.5,
size.segm.line = 0.5,
col.bor.gen = "black",
col.bor.env = "black",
col.line = "black",
col.gen = "blue",
col.env = "forestgreen",
col.alpha.gen = 0.9,
col.alpha.env = 0.9,
col.segm.gen = transparent_color(),
col.segm.env = "forestgreen",
repulsion = 1,
leg.lab = c("Env", "Gen"),
line.type = "solid",
line.alpha = 0.9,
resolution = 300,
file.type = "pdf",
export = FALSE,
file.name = NULL,
width = 8,
height = 7,
color = TRUE,
...
)

## Arguments

x An object fitted with the functions performs_ammi, waas, waas_means, or waasb. The variable to plot. Defaults to var = 1 the first variable of x. type of biplot to produce type = 1 Produces an AMMI1 biplot (Y x PC1) to make inferences related to stability and productivity. type = 2 The default, produces an AMMI2 biplot (PC1 x PC2) to make inferences related to the interaction effects. type = 3 Valid for objects of class waas or waasb, produces a biplot showing the GY x WAASB. type = 4 Produces a plot with the Nominal yield x Environment PC. If TRUE (default), the text labels repel away from each other and away from the data points. Logical argument. If TRUE, a polygon is drawn when type = 2. Logical values (Defaults to TRUE) to include automatically generated titles The graphical theme of the plot. Default is plot_theme = theme_metan(). For more details, see theme. Multiplication factor to expand the axis limits by to enable fitting of labels. Default is 1.1. The range of x and y axes, respectively. Default is NULL (maximum and minimum values of the data set). New values can be inserted as x.lim = c(x.min, x.max) or y.lim = c(y.min, y.max). The breaks to be plotted in the x and y axes, respectively. Defaults to waiver() (automatic breaks). New values can be inserted, for example, as x.breaks = c(0.1, 0.2, 0.3) or x.breaks = seq(0, 1, by = 0.2) The label of x and y axes, respectively. Defaults to NULL, i.e., each plot has a default axis label. New values can be inserted as x.lab = 'my label'. The shape for genotypes and environments indication in the biplot. Default is 21 (circle) for genotypes and 23 (diamond) for environments. Values must be between 21-25: 21 (circle), 22 (square), 23 (diamond), 24 (up triangle), and 25 (low triangle). The size of the shape (both for genotypes and environments). Default is 2.2. The size of tick of shape. Default is 0.3. The size of the shape will be size.shape + size.bor.tick The size of the text for labels (Defaults to 12) and plot area (Defaults to 3.5), respectively. The size of the line that indicate the means in the biplot. Default is 0.5. The size of the segment that start in the origin of the biplot and end in the scores values. Default is 0.5. The color of the shape's border for genotypes and environments, respectively. The color of the line that indicate the means in the biplot. Default is 'gray' The shape color for genotypes (Defaults to 'blue') and environments ('forestgreen'). Must be length one or a vector of colors with the same length of the number of genotypes/environments. The alpha value for the color for genotypes and environments, respectively. Default is 0.9. Values must be between 0 (full transparency) to 1 (full color). The color of segment for genotypes (Defaults to transparent_color()) and environments (Defaults to 'forestgreen'), respectively. Valid arguments for plots with type = 1 or type = 2 graphics. Force of repulsion between overlapping text labels. Defaults to 1. The labs of legend. Default is Gen and Env. The type of the line that indicate the means in the biplot. Default is 'solid'. Other values that can be attributed are: 'blank', no lines in the biplot, 'dashed', 'dotted', 'dotdash', 'longdash', and 'twodash'. The alpha value that combine the line with the background to create the appearance of partial or full transparency. Default is 0.4. Values must be between '0' (full transparency) to '1' (full color). The resolution of the plot. Parameter valid if file.type = 'tiff' is used. Default is 300 (300 dpi) The type of file to be exported. Valid parameter if export = T|TRUE. Default is 'pdf'. The graphic can also be exported in *.tiff format by declaring file.type = 'tiff'. Export (or not) the plot. Default is FALSE. The name of the file for exportation, default is NULL, i.e. the files are automatically named. The width 'inch' of the plot. Default is 8. The height 'inch' of the plot. Default is 7. Should type 4 plot have colors? Default to TRUE. Currently not used.

## Value

An object of class gg, ggplot.

## Details

Biplots type 1 and 2 are well known in AMMI analysis. In the plot type 3, the scores of both genotypes and environments are plotted considering the response variable and the WAASB, an stability index that considers all significant principal component axis of traditional AMMI models or all principal component axis estimated with BLUP-interaction effects (Olivoto et al. 2019). Plot type 4 may be used to better understand the well known 'which-won-where' pattern, facilitating the recommendation of appropriate genotypes targeted for specific environments, thus allowing the exploitation of narrow adaptations.

## References

Olivoto, T., A.D.C. L\'ucio, J.A.G. da silva, V.S. Marchioro, V.Q. de Souza, and E. Jost. 2019. Mean performance and stability in multi-environment trials I: Combining features of AMMI and BLUP techniques. Agron. J. 111:2949-2960. doi:10.2134/agronj2019.03.0220

## Examples

# \donttest{ library(metan) # AMMI model model <- waas(data_ge, env = ENV, gen = GEN, rep = REP, resp = everything())
#> New names: #> *  -> ...15
#> variable GY #> --------------------------------------------------------------------------- #> AMMI analysis table #> --------------------------------------------------------------------------- #> Source Df Sum Sq Mean Sq F value Pr(>F) Percent Accumul #> ENV 13 279.574 21.5057 62.33 0.00e+00 . . #> REP(ENV) 28 9.662 0.3451 3.57 3.59e-08 . . #> GEN 9 12.995 1.4439 14.93 2.19e-19 . . #> GEN:ENV 117 31.220 0.2668 2.76 1.01e-11 . . #> PC1 21 10.749 0.5119 5.29 0.00e+00 34.4 34.4 #> PC2 19 9.924 0.5223 5.40 0.00e+00 31.8 66.2 #> PC3 17 4.039 0.2376 2.46 1.40e-03 12.9 79.2 #> PC4 15 3.074 0.2049 2.12 9.60e-03 9.8 89 #> PC5 13 1.446 0.1113 1.15 3.18e-01 4.6 93.6 #> PC6 11 0.932 0.0848 0.88 5.61e-01 3 96.6 #> PC7 9 0.567 0.0630 0.65 7.53e-01 1.8 98.4 #> PC8 7 0.362 0.0518 0.54 8.04e-01 1.2 99.6 #> PC9 5 0.126 0.0252 0.26 9.34e-01 0.4 100 #> Residuals 252 24.367 0.0967 NA NA . . #> Total 419 357.816 0.8540 NA NA <NA> <NA> #> --------------------------------------------------------------------------- #>
#> New names: #> *  -> ...15
#> variable HM #> --------------------------------------------------------------------------- #> AMMI analysis table #> --------------------------------------------------------------------------- #> Source Df Sum Sq Mean Sq F value Pr(>F) Percent Accumul #> ENV 13 5710.32 439.255 57.22 1.11e-16 . . #> REP(ENV) 28 214.93 7.676 2.70 2.20e-05 . . #> GEN 9 269.81 29.979 10.56 7.41e-14 . . #> GEN:ENV 117 1100.73 9.408 3.31 1.06e-15 . . #> PC1 21 381.13 18.149 6.39 0.00e+00 34.6 34.6 #> PC2 19 319.43 16.812 5.92 0.00e+00 29 63.6 #> PC3 17 114.26 6.721 2.37 2.10e-03 10.4 74 #> PC4 15 81.96 5.464 1.92 2.18e-02 7.4 81.5 #> PC5 13 68.11 5.240 1.84 3.77e-02 6.2 87.7 #> PC6 11 59.07 5.370 1.89 4.10e-02 5.4 93 #> PC7 9 46.69 5.188 1.83 6.33e-02 4.2 97.3 #> PC8 7 26.65 3.808 1.34 2.32e-01 2.4 99.7 #> PC9 5 3.41 0.682 0.24 9.45e-01 0.3 100 #> Residuals 252 715.69 2.840 NA NA . . #> Total 419 8011.48 19.120 NA NA <NA> <NA> #> --------------------------------------------------------------------------- #> #> All variables with significant (p < 0.05) genotype-vs-environment interaction #> Done!
# GY x PC1 for variable GY (default plot) plot_scores(model)
# PC1 x PC2 (variable HM) plot_scores(model, polygon = TRUE, # Draw a convex hull polygon var = "HM", # or var = 2 to select variable type = 2) # type of biplot
# PC1 x PC2 (variable HM) # Change size of plot fonts and colors # Minimal theme plot_scores(model, var = "HM", type = 2, col.gen = "black", col.env = "gray", col.segm.env = "gray", size.tex.pa = 2, size.tex.lab = 16, plot_theme = theme_metan_minimal())
# WAASB index waasb_model <- waasb(data_ge, ENV, GEN, REP, GY)
#> Method: REML/BLUP
#> Random effects: GEN, GEN:ENV
#> Fixed effects: ENV, REP(ENV)