2015-07-29 7 views
0

У меня есть файл polar.dat, который содержит 3 колонки: первый - это время, второе - радиус r, а третий - полярный угол theta. Я хочу построить позиции (r, тета), чтобы точки имели различный оттенок цвета в зависимости от времени. Например, используя красный цвет, я хочу, чтобы самые первые позиции были светло-красными, а конечный - темно-красным.Земельные участки с различными оттенками

Я использую python, pylab и matplotlib, поэтому я ищу команду, предоставленную этими библиотеками.

ответ

2

Чтобы увидеть цвет, вам необходимо использовать matplotlib colorbar. Вы должны указать time в опции color в scatter.

import matplotlib.pyplot as plt 
import numpy as np 

plt.rc('font',family='serif') 

time = np.random.random(100) 
radius = np.random.random(100) 
theta = np.random.random(100) 

fig = plt.figure() 
ax1 = fig.add_subplot(111) 
im = ax1.scatter(radius,theta,c=time,s=40,cmap=plt.cm.Reds) 
ax1.set_xlabel('radius') 
ax1.set_ylabel('theta') 
plt.colorbar(im,ax=ax1) 

fig.show() 

Вы можете проверить различные варианты, доступные colormapat this website.Для вашего конкретного случая здесь, мы используем Reds. enter image description here

+0

И если я хочу иметь оттенки одного цвета вместо разных цветов? – dada

+0

Здесь цвета указаны в соответствии с вашей переменной 'time'. Что вы подразумеваете под «оттенками одного цвета»? – ThePredator

+0

@dada: проверьте обновленный ответ – ThePredator

Смежные вопросы