Photoshop Tutorials: Add A Realistic Rainbow To A Photo
Learn Adobe Photoshop withPhotoshop Tutorials at Photoshop Essentials.com
Step 3: Select "Radial Gradient" From The Options Bar
Obviously, we want our rainbow to appear as an arc, not as a straight line, so with the Gradient tool still selected, go back up to the Options Bar at the top of the screen and click on the Radial Gradient option:

Step 4: Drag Out A Rainbow With The Gradient Tool
With the Gradient tool in hand, the "Rainbow" layer selected in the Layers palette, and the "Russell's Rainbow" gradient loaded and ready, I'm going to create my initial rainbow by simply dragging out a gradient. I want my rainbow to appear as if it's touching the ground behind the smaller group of trees on the left of my photo and then arching high above the larger tree on the right. To do that, I'm going to position my mouse almost to the right edge of the image down near the bottom, in line horizontally with the bottom of the trees on the left, and then I'm going to click and drag all the way across the image to a point just beyond the left of the trees, as we can see in the screenshot below:

Hold your Shift key down as you drag to constrain your gradient horizontally. When I release my mouse button, Photoshop draws my rainbow gradient for me:

Doesn't look very realistic yet, but we're not done yet.
Step 5: Change The Blend Mode Of The Rainbow Layer To "Screen"
With the "Rainbow" layer still selected, go up to the Layer Blend Mode options in the top left of the Layers palette, click on the down-pointing arrow beside the word "Normal", and change the blend mode to Screen by selecting it from the list that appears:

Your rainbow should now look something like this:
