长回答:光以不同的速度传播,这取决于所涉及的介质;例如,它在水中比在空气中传播得慢。当光线进入雨滴或冰晶时,首先会发生折射。然而,并不是所有频率的光都以相同的角度折射。波长较短的颜色(如蓝色、靛蓝色和紫色)比波长较长的颜色(红色)折射得少。这就像穿过棱镜一样分散了颜色。然后,光线从雨滴的背面被反射,在穿过雨滴时再次发生折射,并到达观察者的眼睛。< / p >
The reason it is circular is because the light that got refracted and reflected back to the observer, does so at a specific range of angles, 40 to 42 degrees.
In order to see a rainbow, the sun (or other light source) must be directly behind the observer. A straight line is formed from the light source, the observers eyes, and the center of the rainbow. All rainbows are actually circles. We usually see it as an arc because the earth intercepts the circle. (BTW, because of this, no two people, even standing shoulder to shoulder, can see the same exact rainbow. Each rainbow is being created by different raindrops.) If you're ever in an airplane passing over a cloud with the sun above you (as opposed to near the horizon), you may see a complete rainbow. It's pretty awesome.
Here's an illustration:
A full rainbow is actually a complete circle, but from the ground we see only part of it. From an airplane, in the right conditions, one can see an entire circular rainbow. Why the colors? Sunlight is made up of many wavelengths—or colors—of light. Some of those wavelengths get bent more than others when the light enters the water droplet. Violet (the shortest wavelength of visible light) bends the most, red (the longest wavelength of visible light) bends the least. So when the light exits the water droplet, it is separated into all its wavelengths. The light reflecting back to you, the observer with the Sunlight coming from behind you, from the water droplets will appear separated into all the colors of the rainbow! Violet will be on the bottom and red on the top.