Разберем подробно, потому что там два отдельных вопроса.
Первый - почему именно эти цвета. Белый солнечный свет не является монохромным. Это смесь электромагнитного излучения с длиной волны примерно от 380 до 740 нанометров. Наш глаз воспринимает разные длины волн как разные цвета: 700 нм - красный, 580 нм - желтый, 500 нм - зеленый, 450 нм - синий. Когда луч света входит в водяную каплю, он преломляется. Показатель преломления воды чуть отличается для разных длин волн - это явление называется дисперсией. Красный свет преломляется меньше, фиолетовый больше. После отражения от задней стенки капли и второго преломления на выходе лучи расходятся под разными углами (от 40 до 42 градусов от исходного направления в зависимости от длины волны). Поэтому наблюдатель в каждой точке неба видит только один цвет от конкретной капли - тот, чей угол совпадает с его направлением взгляда.
Второй вопрос - почему семь, а не пять или двенадцать. Это Ньютон решил. Спектр непрерывный, в нем бесконечно много оттенков. Ньютон разделил его на семь частей, потому что был увлечен мистикой числа семь: семь нот, семь дней недели, семь планет известных тогда. Физического обоснования именно для числа семь нет. В Японии традиционно видели в радуге пять цветов, в некоторых культурах - три.