Took the liberty of cleaning up the code a bit - Would this work for you?
# Load libraries
library("tidyverse")
# Define data
my_data <- tribble(
~Month, ~Type, ~n,
"March", "Cardio", 1,
"March", "Core", 1,
"March", "Strength", 4,
"March", "Yoga", 1,
"April", "Cardio", 2,
"April", "Core", 3,
"April", "Strength", 5,
"May", "Boxing", 1,
"May", "Cardio", 3,
"May", "Strength", 5
)
# Visualise
my_data %>%
ggplot(aes(x = Month,
y = n,
fill = Type,
label = n)) +
geom_col() +
geom_text(position = position_stack(vjust = .5)) +
labs(title = "No of Days of each workout Month-wise in 2020") +
theme_bw()
Hope it helps! 