Led matrix brightness changes temperature sensor reading

I have a sure electronics 16x32 led matrix wired up to an Arduino Uno, along with a LM35/TMP35 temperature sensor.

The temperature reading seems correct, or is at least close to correct, and quite stable. As I turn the brightness up on the LED matrix, however, the temperature reading starts fluctuating. At the lowest brightness it's steady at around 26 degrees. Put the brightness up to about 50%, and the reading is now flipping between 26 and 28 degrees. When the brightness is as far as it can go, the reading is then flipping between 27 and 32 degrees; the higher the brightness, the less it sticks to a single temperature.

What could be causing this?

What's most likely to be happening is that the current flowing round the LED matrix circuit is at some point flowing along some of the GND wiring. The high currents mean that the finite resistance of the wiring develops a small voltage across it, a few 10's of mV.

The ADC that is measuring your temperature sensor is seeing a ground potential that is lower than the ground potential of the actual LM35/TMP35 sensor.

So this could be because you've wired it all up on a breadboard and there is one ground wire returning to the Arduino from the breadboard carrying the LED current?

Make sure the Sensor ground is not connected to the LED ground, but is routed only to a GND pin on the Arduino.

Try to ensure that the current from the LED array doesn't share that pin - and better still doesn't even reach the Arduino but comes straight from the power source (not really possible if USB though).

I'm don't understand fully what you mean, but you're spot on. I moved the temp. sensor ground away from the same ground as the led matrix and no more fluctuations. I also moved a thin speaker as well as I noticed it was actually buzzing ever so slightly (barely audible). Thank-you very much.

Does this mean that nothing should share a ground pin, or is the LED matrix an exception?
Also, I'm not an electronics engineer, but my first thought is: can't I just stick a diode between the temp. sensor ground and shared ground pin?

MarkT:
What's most likely to be happening is that the current flowing round the LED matrix circuit is at some point flowing along some of the GND wiring. The high currents mean that the finite resistance of the wiring develops a small voltage across it, a few 10's of mV.

The ADC that is measuring your temperature sensor is seeing a ground potential that is lower than the ground potential of the actual LM35/TMP35 sensor.

So this could be because you've wired it all up on a breadboard and there is one ground wire returning to the Arduino from the breadboard carrying the LED current?

Make sure the Sensor ground is not connected to the LED ground, but is routed only to a GND pin on the Arduino.

Try to ensure that the current from the LED array doesn't share that pin - and better still doesn't even reach the Arduino but comes straight from the power source (not really possible if USB though).