Уточните-ка свою хотелку.
Есть температуры. Понятно. Им соответствуют цвета. Тут уже вопрос. Цвета, те которые colors - они вам жестко заданы или вы их сами задали?
"Интерполяция с промежуточными значениями цветов между точками" совсем непонятно.
Так как у вас заданы цвета - на самом деле в трехмерном пространстве RGB, то для каких "промежуточных точках" вы хотите сделать интерполяции?
Если задача мной правильно понята, то у вам на самом деле надо делать интерполяцию
температур в промежуточных точках, а уже их значения представлять соответствующим цветом. Но тогда цвета температур надо задавать не от фонаря, а по некоторому алгоритму. Ну например, вот так:
data = [36.1, 33.2, 34.6, 35.3, 34.1, 32.9, 35.6, 36.7]
rgb = [int(i*10) for i in data]
c = ax.scatter(theta, r,
c = rgb,
s=area, cmap='hsv', alpha=1)
После этого находите (интерполируете или еще как - тут уж вам виднее) температуру в нужной вам точке, переводите ее по той-же формуле в цвет и рисуете.
При достаточной фантазии и терпении можно подобрать формулу перевода, которая давала бы вам набор других, более дизайнерских цветов. Но это уже чистый эксперимент, на ваших реальных данных с учетом диапазона возможных температур и прочего..