I was learning about non-linear clustering algorithms and I came across this 2-D graph. I was wondering which clustering algorithm and combination of hyper-parameters will cluster this data well.

Just like a human will cluster those 5 spikes. I want my algorithm to do it. I tried KMeans but it was only clustering horizontally or vertically. I started using GMM but couldn't get the hyper-parameters right for the desired clustering.