Planning an experiment follows a reproducible routine:
-
Load required libraries: Load
inti,knitr, anddplyrpackages. - Define factor levels: Set up lists with genotypes, treatments, and management factors.
- Dispatch design generator: Choose between CRD, RCBD, Split-plot, or Augmented designs.
- Plot the field sketch: Verify spatial layouts and serpentine/zigzag sequences.
- Label design: Design the experimental labels to facilitate the data collection.
- Export to Field Book app: Generate field-ready sheets with trait parameters.
Completely Randomized Design (CRD)
The Completely Randomized Design is recommended when experimental units are homogeneous, such as germination chambers, lab assays, or controlled greenhouse benches.
# 1. Define salinity levels (NaCl concentrations in mM)
factors_crd <- list(
NaCl= c("0", "50", "100", "150", "200")
)
# 2. Generate CRD layout (5 treatments x 4 replications = 20 petri dishes/units)
crd_exp <- design_repblock(
factors = factors_crd,
type = "crd",
rep = 4,
zigzag = TRUE,
seed = 2026
)
# Fieldbook preview
crd_exp$fieldbook %>%
head(10) %>%
knitr::kable(caption = "CRD Fieldbook preview")| qrcode | plots | ntreat | NaCl | sort | rep | rows | cols | design |
|---|---|---|---|---|---|---|---|---|
| inkaverse_1001 | 1001 | 1 | 0 | 1 | 1 | 1 | 1 | crd |
| inkaverse_1002 | 1002 | 1 | 0 | 2 | 3 | 1 | 2 | crd |
| inkaverse_1003 | 1003 | 3 | 100 | 3 | 3 | 1 | 3 | crd |
| inkaverse_1004 | 1004 | 2 | 50 | 4 | 2 | 1 | 4 | crd |
| inkaverse_1005 | 1005 | 3 | 100 | 5 | 2 | 1 | 5 | crd |
| inkaverse_1006 | 1006 | 2 | 50 | 6 | 1 | 2 | 5 | crd |
| inkaverse_1007 | 1007 | 4 | 150 | 7 | 3 | 2 | 4 | crd |
| inkaverse_1008 | 1008 | 2 | 50 | 8 | 3 | 2 | 3 | crd |
| inkaverse_1009 | 1009 | 4 | 150 | 9 | 4 | 2 | 2 | crd |
| inkaverse_1010 | 1010 | 5 | 200 | 10 | 2 | 2 | 1 | crd |
# Layout on germination chamber shelves
tarpuy_plotdesign(
data = crd_exp,
factor = "NaCl",
fill = c("plots", "NaCl")
)
Label
The experimental field book generated by the design is used as the input data for label creation. Each row represents an experimental unit, allowing the automatic generation of individualized labels.
# Experimental fieldbook
fb <- crd_exp$fieldbookCustomize the label layout
The label layout can be customized by combining text, images and QR codes. Each layer can use values from the experimental field book, allowing automatic generation of labels for every experimental plot.
Load package and import fonts.
font <- c("Permanent Marker", "Tillana", "Courgette")
huito_fonts(font)You can find more fonts in https://fonts.google.com/
Label design
label <- fb %>%
label_layout(
size = c(5.2, 10)
,
border_color = "#5C0000"
,
border_width = 1.5
) %>%
include_image(
value = "https://inkaverse.com/img/inkaverse.png"
,
size = c(1.3, 1.5)
,
position = c(0.8, 9.1)
) %>%
include_text(
value = "plots"
,
position = c(4.2, 9.1)
,
size = 20
,
color = "black"
,
fontface = "bold"
,
font = font[1]
) %>%
include_image(value = "https://huito.inkaverse.com/img/scale.pdf"
,
size = c(5, 1)
,
position = c(2.6, 7.7)) %>%
include_barcode(value = "qrcode"
,
size = c(5, 5)
,
position = c(2.6, 4.7)) %>%
include_text(
value = "NaCl"
,
position = c(2.6, 1.7)
,
size = 12
,
prefix = "NaCl: "
,
color = "blue"
,
font = font[2]
,
fontface = "bold"
) %>%
include_image(value = "https://huito.inkaverse.com/img/scale.pdf"
,
size = c(5, 1)
,
position = c(2.6, 0.6)) Label preview
The preview mode label_print(mode = "preview") generate a example of the label design from a random row of the data set.

Generate the complete labels
If you want generate the complete labels list, change: label_print(mode = "complete").
label %>%
label_print(mode = "complete"
, filename = "vertical-DCA-1"
, nlabels = 12)