program 13

Author

1NT23IS027-ANKITHA-A SEC

Write an R program to create multiple dot plots for grouped data, comparing the distributions of variables across different categories, using ggplot2’s position_dodge function

Step 1: Load the required library

library(ggplot2)
library(dplyr)

Attaching package: 'dplyr'
The following objects are masked from 'package:stats':

    filter, lag
The following objects are masked from 'package:base':

    intersect, setdiff, setequal, union

Step 2: Load the dataset

data(ToothGrowth)
head(ToothGrowth)
   len supp dose
1  4.2   VC  0.5
2 11.5   VC  0.5
3  7.3   VC  0.5
4  5.8   VC  0.5
5  6.4   VC  0.5
6 10.0   VC  0.5

Step 3:

ToothGrowth$dose <- as.factor(ToothGrowth$dose)

ggplot(ToothGrowth, aes(x = dose, y = len, color = supp)) +
  geom_dotplot(
    binaxis = 'y',
    stackdir = 'center',
    position = position_dodge(width = 0.8),
    dotsize = 0.6,
    binwidth = 1.5  # Controls spacing of dots on y-axis
  ) +
  labs(
    title = "Dot Plot of Tooth Length by Dose and Supplement Type",
    x = "Dose (mg/day)",
    y = "Tooth Length",
    color = "Supplement Type"
  ) +
  theme_minimal()