You can use the egenmore command to generate a variable that can be used to specify what clock position the marker labels should be displayed at for each individual marker.
To use this command, you first need to download it from the SSC, which you can do in Stata with the following command:
ssc install egenmore
To generate this graph in Stata, use the following commands:
sysuse auto, clear
egen clock = mlabvpos(mpg weight)
scatter mpg weight, mlab(make) mlabvpos(clock) title("Graph using egenmore mlabvpos generated data")