Consider a data.frame from a resulting survey.
Question <- c("D1-Q1", "D1-Q2", "D1-Q3", "D1-Q4", "D1-Q5", "D1-Q6", "D2-Q1", "D2-Q2", "D2-Q3", "D2-Q4", "D2-Q5", "D2-Q6", "D3-Q1", "D3-Q2", "D3-Q3", "D3-Q4", "D3-Q5", "D3-Q6")
strong_agree <- c(23,NA,4,23,5, 7, 3, 12, 4, 7, 8, 11,5, 7, 22, 6, 3, 7)
agree <- c(23,42,4,23,5, 7, 23, 12, 4, 7, 8, 11,5, 7, 24, 6, 8, 7)
neutral <- c(3,34,4,23,5, 2, 3, 6, 4, NA, 8, 11,5, 7, 2, 3, 3, 7)
disagree <- c(21,12,4,23,5, 4, 2, 16, NA, 7, 8, 11,5, 7, 6, 6, 34, 7)
strong_disagree <- c(44,NA,4,23,5, 7, 2, 17, 4, 7, 8, 11,5, 7, 23, 6, 3, 7)
Dimension <- c("D1", "D1", "D1", "D1", "D1", "D1", "D2", "D2", "D2", "D2", "D2", "D2", "D3", "D3", "D3", "D3", "D3", "D3")
Region <- c("R1", "R1", "R2", "R2", "R3", "R3", "R1", "R1", "R2", "R2", "R3", "R3", "R1", "R1", "R2", "R2", "R3", "R3")
df <- data.frame(Question, strong_agree, agree,neutral, disagree , strong_disagree, Dimension, Region)
gglikert(df)
Using gglikert, from ggstats package how should the data be prepared in order to create a plot faceting or grouping (?) the Region and Dimension variables like in the image
I just can get around on how to use the gglikert to display the results, but it feel so easy.. I feel dumb.
Thank you.

Well, I think using
gglikertis a bit over the top to create a simple stacked barchart which does not require more than reshaping your data to long and some vanillaggplot2:And if you want to present your data as a likert chart you could easily do so by switching to
ggstats::position_likertwhere I also have set NAs to zero and usedggstats::label_percent_abs()for the axis labels:And as a reference, here is the way to do it with
gglikert: