2012-02-16 5 views
6

데이터 포인트에 스칼라 데이터가 첨부되어 있고 첨부 된 값이 세트의 다른 포인트를 기준으로 얼마나 큰지에 따라 색상이 할당되는 matplotlib로 스 캐터 플롯을 만들고 싶습니다. 나는 히트 맵과 비슷한 것을 원한다. 그러나 "이산 형"히트 맵을 찾고 있는데, 즉 원본 데이터 세트에 점이없는 곳에는 아무 것도 표시하지 않아야합니다. 특히 공간에서 보간을 수행하지 않아야합니다.스 캐터 데이터가있는 스 캐터 플롯

이 작업을 수행 할 수 있습니까?

답변

10

당신은 분산을 사용하고, C 매개 변수에 첨부 된 값을 설정할 수 있습니다

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

알테어이 해결.

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

관련 문제