I had a similar issue and found the hard waters spots were hard to remove. I had parked in a garage in Seattle for a couple of days under a sprinkler pipe that either had a slow leak or just condensation combined with the rust on the outside of the pipe made for a mess on my sunroof, roof and rear window. I ended up using a combination of a clay bar made for glass and a product for cleaning glass from Griot's Garage. The two items that I used were:
https://www.griotsgarage.com/product/gl ... rom=Search
https://www.griotsgarage.com/product/fi ... rom=Search
The clay took off most of it, except for my rear window. I ended up using the clay and the glass polish on that window to get all of the water spots off. I'm sure there are other good products out there, I drive past Griot's headquarters store 3 or 4 times a week and like to drop in. They're great because they'll take the time to show you how to use it on your own car.