I have the following randomly created data:

```
t<- matrix(sample.int(100,size=20,replace=TRUE),nrow=12,ncol=20)

a = list()
b = list()
for (x in (1:20) ) b[[x]] <- paste0("X_", x)  
for (x in (1:12) ) a[[x]] <- paste0("X", x)  

row.names(t) <- rbind(a)
colnames(t)  <- rbind(b)

t <- as.data.frame(t)

```

Here `t` is a hypothetical two way table of frequencies, I am trying to plot a graph like the one given [here](https://stackoverflow.com/questions/48518315/equivalent-in-r-stata-tabplot-twoway-barchart-in-tabular-format) using ggplot2

I am not sure how can I make `t` in such a way that it can be used in ggplot2 code given in the link above. Also, I appreciate if you can provide suggestions on how to visualize a larger two way table, for instance, if dimension of `t` grows to something `30 x 50`.