2012-02-16 33 views
6

Veri noktalarının kendilerine eklenmiş skaler verilere sahip olduğu ve takılı değerlerin kümedeki diğer noktalara göre ne kadar büyük olduğuna bağlı olarak bir renk atanan matplotlib ile bir dağılım grafiği oluşturmak istiyorum. Ben bir ısı haritasına benzer bir şey istiyorum. Bununla birlikte, "ayrı" bir ısı haritası aramaktayım, yani, orijinal veri kümesinde hiçbir nokta bulunmadığında, özellikle, herhangi bir enterpolasyon (boşlukta) yapılmamalıdır.Skaler verilerle dağılım grafiği

Bu yapılabilir mi?

cevap

10

Eğer dağılım kullanımı ve c parametresine bağlı değeri olabilir:

import numpy as np 
import pylab as pl 

x = np.random.uniform(-1, 1, 1000) 
y = np.random.uniform(-1, 1, 1000) 

z = np.sqrt(x*x+y*y) 

pl.scatter(x, y, c=z) 
pl.colorbar() 
pl.show() 

enter image description here

-1

Altair bu çözme.

import numpy as np 
import pylab as pl 

x = np.random.uniform(-1, 1, 1000) 
y = np.random.uniform(-1, 1, 1000) 

z = np.sqrt(x*x+y*y) 

df = pd.DataFrame({'x':x,'y':y, 'z':z}) 

from altair import * 

Chart(df).mark_circle().encode(x='x',y='y', color='z') 

enter image description here

İlgili konular