I found the solution to my own problem.
There was an error code in the main Matlab console.
MATLAB has experienced a low-level graphics error, and may not have drawn correctly.
Read about what you can do to prevent this issue at Resolving Low-Level Graphics Issues then restart MATLAB.
To share details of this issue with MathWorks technical support,
please include this file with your service request.
Typing
opengl info
gave:
Version: ''
Vendor: ''
Renderer: 'None'
RendererDriverVersion: ''
RendererDriverReleaseDate: ''
MaxTextureSize: 0
Visual: ''
Software: 1
HardwareSupportLevel: 'none'
SupportsGraphicsSmoothing: 0
SupportsDepthPeelTransparency: 0
SupportsAlignVertexCenters: 0
Extensions: {}
MaxFrameBufferSize: 0
So clearly there's an issue with opengl and graphics drivers.
I'm fairly sure all my drivers are up to date, so I just resorted to software based opengl. (Which is probably slower, so is not ideal.)
To do that, I typed
opengl('save','software')
Then I restarted Matlab. Scopes now work as exptected.
Typing
opengl info
Now gives
Version: '2.1 Mesa 10.5.2'
Vendor: 'Brian Paul'
Renderer: 'Mesa X11'
MaxTextureSize: 16384
Visual: 'Visual 0x5d, (RGBA 32 bits (8 8 8 8), Z depth 16 bits, Hardware acceleration, Double buffer…'
Software: 'true'
HardwareSupportLevel: 'none'
SupportsGraphicsSmoothing: 0
SupportsDepthPeelTransparency: 1
SupportsAlignVertexCenters: 0
Extensions: {156x1 cell}
MaxFrameBufferSize: 16384