stkp_CLT_disc <- function(pop_waarde,pop_kans,n_stkp,sim_aantal) {
if(n_stkp >= 2 | n_stkp == 0) {   
  if(sim_aantal >= 1) {
    if(length(pop_waarde)==length(pop_kans)) {
      if(length(pop_waarde)==length(unique(pop_waarde))) {   
        if( all(pop_kans > 0) & sum(pop_kans)==1 ) {  
          library(ggplot2)
          library(dplyr, warn.conflicts = FALSE)
          if(n_stkp == 0){
            x <- pop_waarde
            y <- pop_kans
            df <- data.frame(x ,y)
            lbltitle <- "populatie X"
            lblsubt <- "kansmodel"
            lblx <- "x-waarde"
            lbly <- "kans"
          } else {
            n_stkp <- round(n_stkp)
            gem_sim <- apply(replicate(sim_aantal, sample(x=pop_waarde, size=n_stkp, replace=TRUE, prob=pop_kans)), 2, mean)
            df <- as.data.frame(prop.table(table(gem_sim)))
            colnames(df) <- c("x" , "y")
            df$x<-as.numeric(as.character(df$x))
            x <- df$x
            y <- df$y
            sim_aantal <- format(sim_aantal , scientific = F)
            lblsubt <- paste("steekproefgrootte n =" , as.character(n_stkp), " |  aantal herhalingen sim =", sim_aantal)
            if(all(pop_waarde == c(0 , 1)) | all(pop_waarde == c(1 , 0))) {
              lbltitle <- bquote("simulatie steekproefproportie" ~ hat(P))
              lblx <-  bquote(hat(p) ~ "- waarde ")
            } else {
              lbltitle <- bquote("simulatie steekproefgemiddelde" ~ bar(X))
              lblx <-  bquote(bar(x) ~ "- waarde ") }
            lbly <- "relatieve frequentie" }
          if((max(x) - min(x)) == 0){
            xmin <- min(x) - 0.5
            xmax <- max(x) + 0.5
          } else {
            xmin <- min(x) - (max(x)-min(x))*0.05
            xmax <- max(x) + (max(x)-min(x))*0.05 }   
          ymin <- 0
          ymax <- max(y) * 1.05
          lnwidth <- (xmax - xmin)/400
          ggplot(df, aes(x , y)) +
            coord_cartesian (xlim= c(xmin,xmax), ylim= c(ymin,ymax), expand= FALSE ) +
            labs(title = lbltitle, subtitle = lblsubt,  x = lblx, y =lbly) +
            theme(plot.title = element_text(size = 15, hjust=0.5),
                  plot.subtitle = element_text(hjust=0.5),
                  axis.title.x = element_text(hjust = 0.5),
                  axis.title.y = element_text(vjust = 0.5) ,
                  aspect.ratio = 1 ) +
            geom_bar(stat = "identity", width = lnwidth)  
      } else {
         cat("alle kansen moeten strikt positief zijn met som = 1 \npas aan: pop_kans <- c(..., ..., ...)")  }      
     } else {
        cat("de populatiewaarden zijn niet uniek \npas aan: pop_waarde <- c(..., ..., ...)") } 
    } else {
       cat("het aantal bijhorende kansen is verschillend \nvan het aantal populatiewaarden . Pas aan: \npop_waarde <- c(..., ..., ...) en pop_kans <- c(..., ..., ...)")  }      
   } else {
      cat("het aantal herhalingen in de simulatie \nmoet minstens gelijk aan 1 zijn \npas aan: sim_aantal <- ...")  } 
  } else {
     cat("de steekproefgrootte moet \nminstens gelijk aan 2 zijn \npas aan: n_stkp <-... ")  }  
} 