Reprodução de gráfico de barras empilhadas em R

Eu estou tentando reproduzir este gráfico em R sem sucesso:

Mas por mais anos

Estes são os dados:

title   2016 phased 2017 phased 2018 phased 2019 fully loaded
Pillar 1 minimum requirement (p1min)    4,50%   4,50%   4,50%   4,50%
Pillar 2 requirement (P2R)  4,63%   1,75%   1,75%   1,75%
Conservation Buffer 0,63%   1,25%   1,88%   2,50%
O-SII buffer    0,50%   1,00%   1,50%   1,50%
Countercyclical Buffer  0,00%   0,15%   0,25%   0,35%

Idealmente, as cores usariam a coluna 'title' como rótulos (pilar1, 2 etc.)

Aqui esta o meu codigo ate agora

library(ggplot2)
library(xlsx)
library(reshape2)
mydata <- read.xlsx("C:/Users/ken/Desktop/donnees regulation kbc.xlsx", sheetName = "Feuil4", encoding = "UTF-8", stringsAsFactors = F)

years<-c('2015 phased','2016 phased','2017 phased','2018 phased','2019 fully loaded')
df<-data.frame(years,mydata)
df<-melt(df, id.vars="years")

ggplot(df, aes(x= years, y=value, fill=variable)) +
  geom_bar(stat = "identity")

Este é o meu gráfico até agora (bagunça completa)

dput (df)

structure(list(years = structure(c(1L, 2L, 3L, 4L, 5L, 1L, 2L, 
3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 
4L, 5L), .Label = c("2015 phased", "2016 phased", "2017 phased", 
"2018 phased", "2019 fully loaded"), class = "factor"), variable = structure(c(1L, 
1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 3L, 3L, 3L, 3L, 3L, 4L, 4L, 
4L, 4L, 4L, 5L, 5L, 5L, 5L, 5L), .Label = c("title", "X2016.phased", 
"X2017.phased", "X2018.phased", "X2019.fully.loaded"), class = "factor"), 
    value = c("Pillar 1 minimum requirement (p1min) ", "Pillar 2 requirement (P2R)", 
    "Conservation Buffer", "O-SII buffer", "Countercyclical Buffer", 
    "0.045", "0.04625", "0.00625", "0.005", "0", "0.045", "0.0175", 
    "0.0125", "0.01", "0.0015", "0.045", "0.0175", "0.01875", 
    "0.015", "0.0025", "0.045", "0.0175", "0.025", "0.015", "0.0035"
    )), row.names = c(NA, -25L), .Names = c("years", "variable", 
"value"), class = "data.frame")

questionAnswers(2)

yourAnswerToTheQuestion