Remembering from my 1970 Signal Processing lectures we have ...
The crucial thing is the filter used to reconstruct the signal. Let's do the theory first for ideal sampling a perfect sine wave at 2x its frequency and filtering with an ideal low pass filter.
The samples are infinitely thin - they are delta functions separated by time t.
The filter is an ideal low pass filter with infinite slope at the pass frequency - the response drops vertically.
If you put a single delta function pulse through such an ideal filter you get a sin(x)/x response which has values above and below the x axis. The response is zero at the axis crossing points t, 2t, 3t, 4t etc. The response begins at -infinity, peaks at 0 and goes on to +infinity. It is delayed by a time set by the cut off frequency of the filter which is equal to the time between the pulses.
If you put a stream of delta functions separated by time t through such a low pass filter you get a sin(x)/x response for each pulse. For pulse n at time = nt every other pulse has a zero response. Hence there is no aliasing -- the peak (or sampled value) output for each pulse is completely separated from the outputs for all the other pulses.
The output for each pulse is a sin(x)/x curve. Adding all the sin(x)/x curves for all the pulses reconstructs the signal exactly.
The output for a single pulse stretches from -infinity to +infinity
Now to the real world ...
Such a pulse is impossible to create.
Such a filter is impossible to create not least because it has a response which goes back to minus infinity. The filter must have some slope (so many dB/octave) and it does not have a perfect sin(x)/x output response. The less steep the slope, the further from sin(x)/x and the more aliasing.
So, in the real world, any sampling will distort the signal because of the imperfect pulse used and the imperfect filter used to recreate the signal. The best results are obtained with the narrowest pulse you can create and the steepest drop off you can create.
Sampling at frequencies greater than 2x improves the quality because the gaps between the pulses are smaller and the errors introduced by not having a sin(x)/x output response from the filter become smaller.
See Nyquist–Shannon sampling theorem at https://en.wikipedia.org/wiki/Nyquist%E2%80%93Shannon_sampling_theorem which shows the sin(x)/x curve and its zero crossings.
Also, try using a smooth curve to join your points in your graph - you will get a much better representation.
And finally, obviously if the sampling frequency is exactly 2x the sine wave frequency every sample will be at the same point in the sine wave and all will be equal. It's a bit of an exception and I cannot remember how it is resolved - I think it is the sin(x)/x which re-creates the original sine wave even though all the sampled points are the same value. A quick check with 100 sample points in a spreadsheet would resolve it ...