Katie OToole
Katie OToole

Reputation: 11

Plotting predicted GLMM results

I am plotting predicted GLMM results and I am trying to make a barchart with error bars. I have tried a lot of different things but the plot() is the only one I can make work. If it is not possible to make a barchart, is there a way to make the graph look a bit better?

this is my data:

structure(list(Date = c("06/07/2023", "09/07/2023", "29/06/24", 
"29/06/24", "06/07/23", "09/07/23", "20/07/24", "06/07/23", "29/06/24", 
"07/07/23", "10/07/23", "12/07/23", "03/07/23", "12/07/23", "19/07/24", 
"12/30/99", "12/07/23", "19/07/24", "04/07/23", "18/07/24", "20/07/24", 
"04/07/23", "18/07/24", "20/07/24", "08/07/23", "19/07/24", "20/07/24", 
"06/07/23", "14/07/24", "18/07/24", "06/07/23", "14/07/24", "17/07/24", 
"06/07/23", "14/7/24", "17/07/24", "10/07/23", "10/07/23", "10/07/23", 
"13/07/24", "13/07/24", "13/07/24", "20/07/24", "20/07/24"), 
    Site = structure(c(3L, 3L, 3L, 1L, 1L, 1L, 2L, 2L, 2L, 3L, 
    3L, 3L, 1L, 1L, 1L, 2L, 2L, 2L, 3L, 3L, 3L, 1L, 1L, 1L, 2L, 
    2L, 2L, 3L, 3L, 3L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 1L, 3L, 2L, 
    1L, 3L, 2L, 3L), levels = c("Centre", "East", "West"), class = "factor"), 
    Habitat = structure(c(2L, 2L, 1L, 2L, 2L, 2L, 1L, 1L, 2L, 
    2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 1L, 2L, 2L, 2L, 
    1L, 1L, 1L, 2L, 1L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 2L, 1L, 2L, 
    1L, 2L, 2L, 1L, 1L), levels = c("Kelp", "Sand"), class = "factor"), 
    Bait.Type = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 2L, 2L, 2L, 2L, 2L, 2L, 
    2L, 2L, 2L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 4L, 4L, 4L, 
    4L, 4L, 4L, 4L, 4L), levels = c("Clams", "Control", "Crabs", 
    "Mackerel", "Worms"), class = "factor"), Time.of.first.arrival = structure(c(6L, 
    5L, 1L, 5L, 4L, 6L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 10L, 4L, 1L, 6L, 1L, 9L, 2L, 1L, 1L, 5L, 1L, 2L, 
    10L, 7L, 3L, 1L, 1L, 3L, 1L, 1L, 2L, 2L, 1L, 8L, 1L, 1L), levels = c("1", 
    "2", "3", "4", "8", "10", "13", "17", "20", "26"), class = "factor"), 
    Maja.brachydactyla = c(0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 1L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 1L, 0L, 0L, 0L, 0L, 0L, 1L, 
    1L, 2L, 0L, 0L, 0L), Cancer.pagurus = c(0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 2L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 2L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Homarus.gammarus = c(0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Necora.puber = c(0L, 
    1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Pagurus.sp. = c(0L, 
    2L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 4L, 0L, 0L, 1L, 0L, 0L, 0L, 
    0L, 0L, 1L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 1L, 0L, 
    0L, 0L, 0L, 0L, 0L, 3L, 0L, 2L, 0L, 1L, 0L, 0L, 0L), Tritia.reticulata = c(0L, 
    1L, 1L, 0L, 0L, 1L, 2L, 0L, 3L, 2L, 0L, 0L, 30L, 1L, 1L, 
    1L, 0L, 0L, 5L, 0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 22L, 0L, 7L, 0L, 6L, 0L, 0L, 0L), 
    Sepia.officinalis = c(0L, 0L, 0L, 0L, 1L, 1L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 1L), Spondyliosoma.cantharus = c(0L, 1L, 
    0L, 3L, 1L, 0L, 1L, 0L, 1L, 1L, 1L, 0L, 0L, 3L, 5L, 1L, 3L, 
    2L, 0L, 2L, 0L, 0L, 2L, 1L, 1L, 1L, 1L, 2L, 2L, 3L, 0L, 0L, 
    3L, 1L, 0L, 2L, 0L, 0L, 0L, 4L, 0L, 1L, 1L, 6L), Scyliorhinus.canicula = c(0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Gobiusculus.flavescens = c(0L, 
    0L, 34L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    58L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 72L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L
    ), Parablennius.gattorugine = c(0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L), Gobius.sp. = c(0L, 0L, 3L, 0L, 
    0L, 0L, 2L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 2L, 3L, 0L, 4L, 0L, 
    0L, 1L, 0L, 1L, 0L, 0L, 6L, 10L, 0L, 1L, 0L, 0L, 0L, 0L, 
    31L, 3L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Tripterygion.delaisi = c(0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Callionymus.sp. = c(0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 6L, 2L, 0L, 0L, 
    0L, 0L, 0L, 3L, 0L, 2L, 1L, 1L, 0L, 0L, 0L, 1L, 0L, 1L, 2L, 
    0L, 0L, 0L, 0L, 0L, 5L, 0L, 2L, 0L, 1L, 0L, 0L, 0L), Labridae = c(0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Labrus.bergylta = c(0L, 
    0L, 1L, 0L, 0L, 0L, 1L, 2L, 1L, 0L, 0L, 1L, 0L, 1L, 1L, 1L, 
    1L, 1L, 0L, 0L, 2L, 0L, 2L, 0L, 2L, 2L, 2L, 0L, 4L, 1L, 1L, 
    0L, 0L, 1L, 2L, 3L, 0L, 2L, 0L, 0L, 0L, 0L, 1L, 2L), Symphodus.bailloni = c(0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Symphodus.melops = c(0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 2L, 1L, 
    0L, 1L, 0L, 0L, 2L, 0L, 0L, 0L, 0L, 1L, 1L, 0L, 0L, 0L, 0L, 
    0L, 0L, 1L, 2L, 0L, 0L, 3L, 0L, 1L, 0L, 0L, 1L, 1L), Ctenolabrus.rupestris = c(0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 
    0L, 0L, 2L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 2L), Labrus.mixtus = c(0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 2L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 1L), Centrolabrus.exoletus = c(0L, 
    0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 1L, 0L, 0L, 
    0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Trisopterus.luscus = c(0L, 
    0L, 3L, 0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 1L, 0L, 
    0L, 0L, 0L, 1L, 9L, 0L, 1L, 1L, 1L, 1L, 2L, 0L, 8L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 1L, 0L, 0L, 0L, 40L), Trisopterus.minutus = c(0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 2L, 1L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Mustelus.sp. = c(0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Dicentrarchus.labrax = c(2L, 
    0L, 1L, 0L, 0L, 0L, 0L, 3L, 1L, 4L, 2L, 3L, 0L, 3L, 0L, 1L, 
    3L, 1L, 2L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 1L, 2L, 0L, 
    0L, 1L, 0L, 0L, 0L, 0L, 2L, 0L, 0L, 0L, 0L, 1L, 0L), Mullus.surmuletus = c(0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 4L, 0L, 1L, 0L, 0L, 
    7L, 2L, 0L, 1L, 2L, 0L, 2L, 0L, 0L, 0L, 0L, 0L, 6L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 3L, 0L, 0L, 0L, 0L), Ammodytidae.sp. = c(0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 26L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 127L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 2L, 0L, 0L, 107L, 
    47L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 1L, 0L, 1L, 
    0L), Diplodus.vulgaris = c(0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L), Anemonia.viridis = c(0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Raja.sp. = c(0L, 
    0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Mustelus.asterias = c(0L, 
    0L, 0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Conger.conger = c(0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Pollachius.pollachius = c(0L, 
    0L, 2L, 0L, 0L, 0L, 1L, 2L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 
    2L, 1L, 0L, 2L, 2L, 0L, 0L, 0L, 1L, 1L, 2L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 2L, 0L, 1L, 0L, 0L, 1L, 1L), Chelon.spp. = c(0L, 
    0L, 0L, 2L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 
    0L, 0L, 0L, 3L, 1L, 0L, 5L, 0L, 0L, 1L, 1L, 1L, 1L, 0L, 0L, 
    0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Total.species..MaxN. = c(1, 
    4, 7, 3, 2, 3, 7, 4, 5, 4, 2, 4, 4, 12, 6, 8, 5, 8, 3, 8, 
    8, 1, 8, 4, 5, 9, 10, 5, 9, 6, 2, 2, 3, 7, 6, 3, 4, 6, 4, 
    7, 6, 1, 7, 9), Total.individuals..MaxInd. = c(2L, 5L, 45L, 
    6L, 2L, 3L, 9L, 8L, 32L, 11L, 3L, 9L, 39L, 17L, 12L, 67L, 
    16L, 139L, 8L, 14L, 20L, 2L, 15L, 4L, 77L, 16L, 22L, 6L, 
    131L, 55L, 3L, 2L, 5L, 39L, 11L, 6L, 32L, 12L, 12L, 12L, 
    12L, 1L, 7L, 58L)), row.names = c(NA, -44L), class = "data.frame")

I am trying to plot;

glm1 <- glmer(Total.species..MaxN. ~  Bait.Type + (1|Habitat),
              family=poisson, data=df)

My current graph looks like this; enter image description here

and I would like it to look more like this (but without the habitat category; enter image description here

I have tried the following code;

taxapred <- ggpredict(glm1, terms = "Bait.Type")

plot(taxapred) +
  labs(x = "Bait Type", y = "Number of Taxa")+
  theme_classic() 

Upvotes: 0

Views: 212

Answers (1)

DaveArmstrong
DaveArmstrong

Reputation: 22034

You can do this by manually plotting the output of ggpredict. To get this to work, I had to use the options, type="random" and interval="confidence" to get predictions for all bait-habitat pairs. Once you do that, you can use the bar geometry (with position="dodge" and stat="identity") to make side-by-side bars. You can add the errorbar geometry to get the error bars.

df <- structure(list(Date = c("06/07/2023", "09/07/2023", "29/06/24", 
"29/06/24", "06/07/23", "09/07/23", "20/07/24", "06/07/23", "29/06/24", 
"07/07/23", "10/07/23", "12/07/23", "03/07/23", "12/07/23", "19/07/24", 
"12/30/99", "12/07/23", "19/07/24", "04/07/23", "18/07/24", "20/07/24", 
"04/07/23", "18/07/24", "20/07/24", "08/07/23", "19/07/24", "20/07/24", 
"06/07/23", "14/07/24", "18/07/24", "06/07/23", "14/07/24", "17/07/24", 
"06/07/23", "14/7/24", "17/07/24", "10/07/23", "10/07/23", "10/07/23", 
"13/07/24", "13/07/24", "13/07/24", "20/07/24", "20/07/24"), 
    Site = structure(c(3L, 3L, 3L, 1L, 1L, 1L, 2L, 2L, 2L, 3L, 
    3L, 3L, 1L, 1L, 1L, 2L, 2L, 2L, 3L, 3L, 3L, 1L, 1L, 1L, 2L, 
    2L, 2L, 3L, 3L, 3L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 1L, 3L, 2L, 
    1L, 3L, 2L, 3L), levels = c("Centre", "East", "West"), class = "factor"), 
    Habitat = structure(c(2L, 2L, 1L, 2L, 2L, 2L, 1L, 1L, 2L, 
    2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 1L, 2L, 2L, 2L, 
    1L, 1L, 1L, 2L, 1L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 2L, 1L, 2L, 
    1L, 2L, 2L, 1L, 1L), levels = c("Kelp", "Sand"), class = "factor"), 
    Bait.Type = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 2L, 2L, 2L, 2L, 2L, 2L, 
    2L, 2L, 2L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 4L, 4L, 4L, 
    4L, 4L, 4L, 4L, 4L), levels = c("Clams", "Control", "Crabs", 
    "Mackerel", "Worms"), class = "factor"), Time.of.first.arrival = structure(c(6L, 
    5L, 1L, 5L, 4L, 6L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 10L, 4L, 1L, 6L, 1L, 9L, 2L, 1L, 1L, 5L, 1L, 2L, 
    10L, 7L, 3L, 1L, 1L, 3L, 1L, 1L, 2L, 2L, 1L, 8L, 1L, 1L), levels = c("1", 
    "2", "3", "4", "8", "10", "13", "17", "20", "26"), class = "factor"), 
    Maja.brachydactyla = c(0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 1L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 1L, 0L, 0L, 0L, 0L, 0L, 1L, 
    1L, 2L, 0L, 0L, 0L), Cancer.pagurus = c(0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 2L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 2L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Homarus.gammarus = c(0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Necora.puber = c(0L, 
    1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Pagurus.sp. = c(0L, 
    2L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 4L, 0L, 0L, 1L, 0L, 0L, 0L, 
    0L, 0L, 1L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 1L, 0L, 
    0L, 0L, 0L, 0L, 0L, 3L, 0L, 2L, 0L, 1L, 0L, 0L, 0L), Tritia.reticulata = c(0L, 
    1L, 1L, 0L, 0L, 1L, 2L, 0L, 3L, 2L, 0L, 0L, 30L, 1L, 1L, 
    1L, 0L, 0L, 5L, 0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 22L, 0L, 7L, 0L, 6L, 0L, 0L, 0L), 
    Sepia.officinalis = c(0L, 0L, 0L, 0L, 1L, 1L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 1L), Spondyliosoma.cantharus = c(0L, 1L, 
    0L, 3L, 1L, 0L, 1L, 0L, 1L, 1L, 1L, 0L, 0L, 3L, 5L, 1L, 3L, 
    2L, 0L, 2L, 0L, 0L, 2L, 1L, 1L, 1L, 1L, 2L, 2L, 3L, 0L, 0L, 
    3L, 1L, 0L, 2L, 0L, 0L, 0L, 4L, 0L, 1L, 1L, 6L), Scyliorhinus.canicula = c(0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Gobiusculus.flavescens = c(0L, 
    0L, 34L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    58L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 72L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L
    ), Parablennius.gattorugine = c(0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L), Gobius.sp. = c(0L, 0L, 3L, 0L, 
    0L, 0L, 2L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 2L, 3L, 0L, 4L, 0L, 
    0L, 1L, 0L, 1L, 0L, 0L, 6L, 10L, 0L, 1L, 0L, 0L, 0L, 0L, 
    31L, 3L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Tripterygion.delaisi = c(0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Callionymus.sp. = c(0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 6L, 2L, 0L, 0L, 
    0L, 0L, 0L, 3L, 0L, 2L, 1L, 1L, 0L, 0L, 0L, 1L, 0L, 1L, 2L, 
    0L, 0L, 0L, 0L, 0L, 5L, 0L, 2L, 0L, 1L, 0L, 0L, 0L), Labridae = c(0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Labrus.bergylta = c(0L, 
    0L, 1L, 0L, 0L, 0L, 1L, 2L, 1L, 0L, 0L, 1L, 0L, 1L, 1L, 1L, 
    1L, 1L, 0L, 0L, 2L, 0L, 2L, 0L, 2L, 2L, 2L, 0L, 4L, 1L, 1L, 
    0L, 0L, 1L, 2L, 3L, 0L, 2L, 0L, 0L, 0L, 0L, 1L, 2L), Symphodus.bailloni = c(0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Symphodus.melops = c(0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 2L, 1L, 
    0L, 1L, 0L, 0L, 2L, 0L, 0L, 0L, 0L, 1L, 1L, 0L, 0L, 0L, 0L, 
    0L, 0L, 1L, 2L, 0L, 0L, 3L, 0L, 1L, 0L, 0L, 1L, 1L), Ctenolabrus.rupestris = c(0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 
    0L, 0L, 2L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 2L), Labrus.mixtus = c(0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 2L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 1L), Centrolabrus.exoletus = c(0L, 
    0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 1L, 0L, 0L, 
    0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Trisopterus.luscus = c(0L, 
    0L, 3L, 0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 1L, 0L, 
    0L, 0L, 0L, 1L, 9L, 0L, 1L, 1L, 1L, 1L, 2L, 0L, 8L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 1L, 0L, 0L, 0L, 40L), Trisopterus.minutus = c(0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 2L, 1L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Mustelus.sp. = c(0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Dicentrarchus.labrax = c(2L, 
    0L, 1L, 0L, 0L, 0L, 0L, 3L, 1L, 4L, 2L, 3L, 0L, 3L, 0L, 1L, 
    3L, 1L, 2L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 1L, 2L, 0L, 
    0L, 1L, 0L, 0L, 0L, 0L, 2L, 0L, 0L, 0L, 0L, 1L, 0L), Mullus.surmuletus = c(0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 4L, 0L, 1L, 0L, 0L, 
    7L, 2L, 0L, 1L, 2L, 0L, 2L, 0L, 0L, 0L, 0L, 0L, 6L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 3L, 0L, 0L, 0L, 0L), Ammodytidae.sp. = c(0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 26L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 127L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 2L, 0L, 0L, 107L, 
    47L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 1L, 0L, 1L, 
    0L), Diplodus.vulgaris = c(0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L), Anemonia.viridis = c(0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Raja.sp. = c(0L, 
    0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Mustelus.asterias = c(0L, 
    0L, 0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Conger.conger = c(0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Pollachius.pollachius = c(0L, 
    0L, 2L, 0L, 0L, 0L, 1L, 2L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 
    2L, 1L, 0L, 2L, 2L, 0L, 0L, 0L, 1L, 1L, 2L, 0L, 0L, 0L, 0L, 
    0L, 0L, 0L, 0L, 0L, 0L, 2L, 0L, 1L, 0L, 0L, 1L, 1L), Chelon.spp. = c(0L, 
    0L, 0L, 2L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 
    0L, 0L, 0L, 3L, 1L, 0L, 5L, 0L, 0L, 1L, 1L, 1L, 1L, 0L, 0L, 
    0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Total.species..MaxN. = c(1, 
    4, 7, 3, 2, 3, 7, 4, 5, 4, 2, 4, 4, 12, 6, 8, 5, 8, 3, 8, 
    8, 1, 8, 4, 5, 9, 10, 5, 9, 6, 2, 2, 3, 7, 6, 3, 4, 6, 4, 
    7, 6, 1, 7, 9), Total.individuals..MaxInd. = c(2L, 5L, 45L, 
    6L, 2L, 3L, 9L, 8L, 32L, 11L, 3L, 9L, 39L, 17L, 12L, 67L, 
    16L, 139L, 8L, 14L, 20L, 2L, 15L, 4L, 77L, 16L, 22L, 6L, 
    131L, 55L, 3L, 2L, 5L, 39L, 11L, 6L, 32L, 12L, 12L, 12L, 
    12L, 1L, 7L, 58L)), row.names = c(NA, -44L), class = "data.frame")
library(lme4)
#> Loading required package: Matrix
library(ggeffects)
library(ggplot2)
glm1 <- glmer(Total.species..MaxN. ~  Bait.Type + (1|Habitat),
              family=poisson, data=df)


taxapred <- ggpredict(glm1, 
                      terms = c("Bait.Type", "Habitat"), 
                      type = "random", 
                      interval="confidence")

ggplot(taxapred, 
       aes(x=x, y=predicted, fill=group)) + 
  geom_bar(stat="identity", position="dodge") + 
  geom_errorbar(aes(x=x,ymin=conf.low, ymax=conf.high), position=position_dodge(width=1), width=.25) + 
  scale_fill_manual(values=c("#8a1ca6", "#e00999")) + 
  theme_classic() + 
  labs(x="Bait Type", y="Number of Taxa", fill="Habitat")

Created on 2023-09-03 with reprex v2.0.2

Upvotes: 1

Related Questions