I have been trying to get semi-transparent circle-shape markers on a log-log scatter plot. MATLAB's own scatter plot function doesn't produce semi-transparent markers (see comments below), so I am using this wonderful tool scatter_patches from Central File Exchange and it works very well:
However, I am having issues adapting this code for a log-log scatter plot. In order to obtain a log-log scatter plot with this program, I need to fix two things:
1 . Change the axes to log scale. This can be achieved by adding following after line 61:
set(cax, 'XScale', 'log');
set(cax, 'YScale', 'log');
This produces correct log scale and grid points.
2 . However, after I fixed 1., the size of the markers was not uniform in my plot. On a log plot, the lower-value regions of the axes are zoomed-in. In the scatter_patches plot, the markers at the lower side of axes are bigger while they are smaller towards the higher-value side of axes. So, the marker size is not the same on the entire plot. I tried using log10(cSize) instead of cSize on lines 221-222, but this only slimmed the difference between the largest and smallest marker sizes. It didn't yield the same size markers on the plot.
If anyone has an idea of what I might be missing here, please share.
Any help would be greatly appreciated.

set(hadle_to_scatterplot,'MarkerFaceColor','None')? It seems likescatter_patchescreate a circle instead of marker. - Crowleyexp()here:set(patchObjects(i), 'XData', cSize * sin(patchSpec) / ptsPerXUnit + xs(i)); set(patchObjects(i), 'YData', cSize * cos(patchSpec) / ptsPerYUnit + ys(i));likeset(patchObjects(i), 'XData', cSize * exp(sin(patchSpec))/ ptsPerXUnit + xs(i));But i didn't tried ! - obchardonset(patchObjects(i), 'XData', exp(cSize * sin(patchSpec)/ ptsPerXUnit + xs(i)));and the same for YData - obchardon