Hi all, I need your help. I am struggling on getting a bar plot with ggplot2 package.
 
Imagine I have 3 different variables (which would be my y values in aes) that  I want to plot for each of my samples (x aes): 

     str(df) 
    'data.frame':	4 obs. of  4 variables:
     $ samples: Factor w/ 4 levels "S1","S2","S3",..: 1 2 3 4
     $ v1     : int  234 189 167 235
     $ v2     : int  345 265 235 254
     $ v3     : int  54 48 32 645

I would like to have a barplot in which I have a group per sample (4), each of them with 3 bars, one for each variable (12 bars in total).
I know that if I want to extract the height from the df I have to call for stat = "identity".
So far this has been my guess, but it's not working properly:

    n <- ggplot(df) + 
      geom_bar(mapping = aes(x = samples, y = v1), stat = "identity", position = "dodge") + 
      geom_bar(mapping = aes(x = samples, y = v2), stat = "identity", position = "dodge") +
      geom_bar(mapping = aes(x = samples, y = v3), stat = "identity", position = "dodge")

   
Could you please help me? 

Thanks before hand


with iris data : 4 observation of 4 variables:

    data(iris)
    library(ggplot2)
    library(tidyr)

    iris %>%
      gather("Type", "Value",-Species) %>%
      ggplot(aes(Species, Value, fill = Type)) +
      geom_bar(position = "dodge", stat = "identity") +
      theme_bw()

<a href="https://ibb.co/Ksj1Q1h"><img src="https://i.ibb.co/09jwWw2/Rplot.png" alt="Rplot" border="0"></a>

Separate boxes for each species:

    iris %>%
      gather("Type", "Value",-Species) %>%
      ggplot(aes(Species, Value, fill = Type)) +
      geom_col(position = "dodge") +
      theme_bw()+
      facet_wrap(~Species,scales = "free_x")

<a href="https://ibb.co/02JfkPp"><img src="https://i.ibb.co/xL5MyVK/Rplot01.png" alt="Rplot01" border="0"></a>

input (for one species, likewise for rest two species):

    > head(iris)
      Sepal.Length Sepal.Width Petal.Length Petal.Width Species
    1          5.1         3.5          1.4         0.2  setosa
    2          4.9         3.0          1.4         0.2  setosa
    3          4.7         3.2          1.3         0.2  setosa
    4          4.6         3.1          1.5         0.2  setosa
    5          5.0         3.6          1.4         0.2  setosa
    6          5.4         3.9          1.7         0.4  setosa