\documentclass[tikz,border=4pt]{standalone}
\usepackage{pgfplots}
\usepackage{xcolor}
\usetikzlibrary{patterns}
\pgfplotsset{compat=1.18}

\usepgfplotslibrary{groupplots}
\definecolor{modelreal}{HTML}{000000}
\definecolor{modelarf}{HTML}{777777}
\definecolor{modelbayesnet}{HTML}{CCBB44}
\definecolor{modelctgan}{HTML}{EE6677}
\definecolor{modelforestdiffusion}{HTML}{228833}
\definecolor{modelrealtabformer}{HTML}{332288}
\definecolor{modeltabbyflow}{HTML}{882255}
\definecolor{modeltabddpm}{HTML}{EE7733}
\definecolor{modeltabdiff}{HTML}{AA3377}
\definecolor{modeltabpfgen}{HTML}{009988}
\definecolor{modeltabsyn}{HTML}{66CCEE}
\definecolor{modeltvae}{HTML}{4477AA}
\begin{document}
\begin{tikzpicture}
\begin{groupplot}[
group style={group size=3 by 1, horizontal sep=1.15cm},
width=5.0cm,
height=7.0cm,
ymin=0.0, ymax=1.0,
ymajorgrids,
grid style={draw=gray!20},
major grid style={draw=gray!30},
symbolic x coords={REAL,ARF,BayesNet,CTGAN,ForestDiffusion,RealTabFormer,TabbyFlow,TabDDPM,TabDiff,TabPFGen,TabSyn,TVAE},
xtick=data,
x tick label style={rotate=45, anchor=east, font=\scriptsize},
tick style={draw=black!70},
axis line style={draw=black!70},
]
\nextgroupplot[title={Categorical}, ylabel={Subgroup structure score}]
\addplot+[ybar, bar width=7.0pt, draw=modelreal, fill=modelreal] coordinates { (REAL,1.0000) };
\addplot+[ybar, bar width=7.0pt, draw=modelarf, fill=modelarf] coordinates { (ARF,0.8708) };
\addplot+[ybar, bar width=7.0pt, draw=modelbayesnet, fill=modelbayesnet] coordinates { (BayesNet,0.8504) };
\addplot+[ybar, bar width=7.0pt, draw=modelctgan, fill=modelctgan] coordinates { (CTGAN,0.8287) };
\addplot+[ybar, bar width=7.0pt, draw=modelforestdiffusion, fill=modelforestdiffusion] coordinates { (ForestDiffusion,0.8008) };
\addplot+[ybar, bar width=7.0pt, draw=modelrealtabformer, fill=modelrealtabformer] coordinates { (RealTabFormer,0.8995) };
\addplot+[ybar, bar width=7.0pt, draw=modeltabbyflow, fill=modeltabbyflow] coordinates { (TabbyFlow,0.7579) };
\addplot+[ybar, bar width=7.0pt, draw=modeltabddpm, fill=modeltabddpm] coordinates { (TabDDPM,0.7889) };
\addplot+[ybar, bar width=7.0pt, draw=modeltabdiff, fill=modeltabdiff] coordinates { (TabDiff,0.8110) };
\addplot+[ybar, bar width=7.0pt, draw=modeltabpfgen, fill=modeltabpfgen] coordinates { (TabPFGen,0.8226) };
\addplot+[ybar, bar width=7.0pt, draw=modeltabsyn, fill=modeltabsyn] coordinates { (TabSyn,0.8282) };
\addplot+[ybar, bar width=7.0pt, draw=modeltvae, fill=modeltvae] coordinates { (TVAE,0.7619) };
\nextgroupplot[title={Mixed}, ylabel={}]
\addplot+[ybar, bar width=7.0pt, draw=modelreal, fill=modelreal] coordinates { (REAL,1.0000) };
\addplot+[ybar, bar width=7.0pt, draw=modelarf, fill=modelarf] coordinates { (ARF,0.7553) };
\addplot+[ybar, bar width=7.0pt, draw=modelbayesnet, fill=modelbayesnet] coordinates { (BayesNet,0.7641) };
\addplot+[ybar, bar width=7.0pt, draw=modelctgan, fill=modelctgan] coordinates { (CTGAN,0.6638) };
\addplot+[ybar, bar width=7.0pt, draw=modelforestdiffusion, fill=modelforestdiffusion] coordinates { (ForestDiffusion,0.6939) };
\addplot+[ybar, bar width=7.0pt, draw=modelrealtabformer, fill=modelrealtabformer] coordinates { (RealTabFormer,0.8099) };
\addplot+[ybar, bar width=7.0pt, draw=modeltabbyflow, fill=modeltabbyflow] coordinates { (TabbyFlow,0.7124) };
\addplot+[ybar, bar width=7.0pt, draw=modeltabddpm, fill=modeltabddpm] coordinates { (TabDDPM,0.6836) };
\addplot+[ybar, bar width=7.0pt, draw=modeltabdiff, fill=modeltabdiff] coordinates { (TabDiff,0.7513) };
\addplot+[ybar, bar width=7.0pt, draw=modeltabpfgen, fill=modeltabpfgen] coordinates { (TabPFGen,0.7511) };
\addplot+[ybar, bar width=7.0pt, draw=modeltabsyn, fill=modeltabsyn] coordinates { (TabSyn,0.7256) };
\addplot+[ybar, bar width=7.0pt, draw=modeltvae, fill=modeltvae] coordinates { (TVAE,0.5810) };
\nextgroupplot[title={Numerical}, ylabel={}]
\addplot+[ybar, bar width=7.0pt, draw=modelreal, fill=modelreal] coordinates { (REAL,1.0000) };
\addplot+[ybar, bar width=7.0pt, draw=modelarf, fill=modelarf] coordinates { (ARF,0.4826) };
\addplot+[ybar, bar width=7.0pt, draw=modelbayesnet, fill=modelbayesnet] coordinates { (BayesNet,0.5236) };
\addplot+[ybar, bar width=7.0pt, draw=modelctgan, fill=modelctgan] coordinates { (CTGAN,0.4998) };
\addplot+[ybar, bar width=7.0pt, draw=modelforestdiffusion, fill=modelforestdiffusion] coordinates { (ForestDiffusion,0.4233) };
\addplot+[ybar, bar width=7.0pt, draw=modelrealtabformer, fill=modelrealtabformer] coordinates { (RealTabFormer,0.6694) };
\addplot+[ybar, bar width=7.0pt, draw=modeltabbyflow, fill=modeltabbyflow] coordinates { (TabbyFlow,0.4325) };
\addplot+[ybar, bar width=7.0pt, draw=modeltabddpm, fill=modeltabddpm] coordinates { (TabDDPM,0.3743) };
\addplot+[ybar, bar width=7.0pt, draw=modeltabdiff, fill=modeltabdiff] coordinates { (TabDiff,0.4578) };
\addplot+[ybar, bar width=7.0pt, draw=modeltabpfgen, fill=modeltabpfgen] coordinates { (TabPFGen,0.4696) };
\addplot+[ybar, bar width=7.0pt, draw=modeltabsyn, fill=modeltabsyn] coordinates { (TabSyn,0.4737) };
\addplot+[ybar, bar width=7.0pt, draw=modeltvae, fill=modeltvae] coordinates { (TVAE,0.5392) };
\end{groupplot}
\end{tikzpicture}
\end{document}
