Hi Blick,
There are two ways of tackling this:
1. Write some JavaScript to sets the image name on your page - that way you can append a unique parameter to end of the image file URL that forces the browser to download the image each time.
2. Add an instruction to your web server config via a ".htaccess" file that then tells the browser not to cache this image.
Looking at your web site now, it seems option 1 has already been applied - but only to periodic image refreshes. The initial load does not use the cache buster.
Option two is worth a shot.
Create a file called ".htaccess" in root folder of your web - if it does not already exist.
Add the content:
<Files wp-content/uploads/Weather/sunplot.php>
FileETag None
Header unset ETag
Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
Header set Pragma "no-cache"
Header set Expires "Wed, 11 Jan 1984 05:00:00 GMT"
</Files>
That makes the web server send instructions to the browser not to cache the image - but it is up to the browser if it honours that recommendation.