add group-level abline to plot

Also, please post your code and data on a copy / paste friendly format, and preferably using the reprex package, if you do not know how, here is a FAQ that explains how to do it.

For example, this would be a reprex for your question

df <- data.frame(
    stringsAsFactors = FALSE,
    Wt = c(
        14.5, 306, 15, 175, 50.3, 33, 1.82, 1.25, 113, 89, 70.9, 23.8,
        6.8, 270, 170, 32.5, 0.07, 0.21, 2.2, 6.7, 3.82, 14, 54.4,
        0.389, 0.9, 0.7, 1.2, 1.2
    ),
    Skull = c(
        19.7, 41.1, 16.7, 37.4, 22.6, 27.8, 11.39, 8.86, 32.7, 26.2,
        21.3, 22.7, 13.06, 28.6, 30.8, 16.7, 3.19, 4.45, 9.8, 12.88,
        10.9, 12.16, 23.95, 5.68, 5.44, 4.94, 6.36, 8.95
    ),
    Palate = c(
        9.47, 20.3, 8.24, 18.1, 9.41, 13.6, 5.78, 4.25, 15.2, 10.98,
        8.4, 10.78, 6.29, 12.6, 11.82, 7.31, 1.33, 1.59, 3.55, 4.89,
        4.53, 4.54, 10.3, 2.44, 1.5, 1.73, 2.25, 3.3
    ),
    Species = c(
        "Coyote", "Grizzly bear", "Wolverine", "Lion",
        "Leopard", "Gray Wolf", "Kit fox", "Fennec Fox",
        "Tiger", "Jaguar", "Cougar", "Maned wolf", "Fisher",
        "Leopard seal", "Gorilla", "Baboon", "Mouse lemur",
        "Bush-baby", "Capuhcin", "Black howler", "Macaque",
        "Proboscis monkey", "Orangutan", "Dwarf lemur", "Avahi",
        "Sportive lemur", "Potto", "Monk saki"
    ),
    Order = c(
        "Carnivora", "Carnivora", "Carnivora", "Carnivora",
        "Carnivora", "Carnivora", "Carnivora", "Carnivora",
        "Carnivora", "Carnivora", "Carnivora", "Carnivora",
        "Carnivora", "Carnivora", "Primates", "Primates",
        "Primates", "Primates", "Primates", "Primates", "Primates",
        "Primates", "Primates", "Primates", "Primates",
        "Primates", "Primates", "Primates"
    )
)

library(ggplot2)

ggplot(df, aes(x = log(Wt), y = log(Palate), shape = Order, color = Order)) +
    geom_point() +
    geom_smooth(method = "lm")

1 Like