반응형
산점도:산란을 위한 lib 색상 막대
저는 x,y,c의 3가지 플롯 파라미터를 가진 데이터로 작업하고 있습니다.산점도에 대한 사용자 정의 색상 값은 어떻게 생성합니까?
이 예제를 확장하여 수행하려고 합니다.
import matplotlib
import matplotlib.pyplot as plt
cm = matplotlib.cm.get_cmap('RdYlBu')
colors=[cm(1.*i/20) for i in range(20)]
xy = range(20)
plt.subplot(111)
colorlist=[colors[x/2] for x in xy] #actually some other non-linear relationship
plt.scatter(xy, xy, c=colorlist, s=35, vmin=0, vmax=20)
plt.colorbar()
plt.show()
하지만 결과는TypeError: You must first set_array for mappable
산점도 1의 matplotlib 문서에서:
cmap은 c가 플로트 배열인 경우에만 사용됩니다.
따라서 컬러리스트는 현재처럼 튜플 목록이 아닌 플로트 목록이어야 합니다. plt.colorbar()는 plt.scatter()가 반환하는 CircleCollection과 같은 표시 가능한 개체를 원합니다.그러면 vmin 및 vmax가 컬러바의 한계를 제어할 수 있습니다.vmin/vmax 외부의 개체는 끝점의 색상을 가져옵니다.
이것은 당신에게 어떤 효과가 있습니까?
import matplotlib.pyplot as plt
cm = plt.cm.get_cmap('RdYlBu')
xy = range(20)
z = xy
sc = plt.scatter(xy, xy, c=z, vmin=0, vmax=20, s=35, cmap=cm)
plt.colorbar(sc)
plt.show()
fig, ax = plt.subplots()
im = ax.scatter(x, y, c=c)
fig.colorbar(im, ax=ax)
두 변수와 세 번째 변수의 색상을 사용하여 산란하고자 한다면 Altair를 선택하는 것이 좋습니다.
데이터 집합 만들기
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
df = pd.DataFrame(40*np.random.randn(10, 3), columns=['A', 'B','C'])
알테어 플롯
from altair import *
Chart(df).mark_circle().encode(x='A',y='B', color='C').configure_cell(width=200, height=150)
줄거리.
언급URL : https://stackoverflow.com/questions/6063876/matplotlib-colorbar-for-scatter
반응형
'programing' 카테고리의 다른 글
사용자 지정 파이프 공급자 없음 - 각도 4 (0) | 2023.07.25 |
---|---|
jQuery를 사용하여 첫 번째 "n"개 항목 선택 (0) | 2023.07.25 |
AJAX 요청의 내용 유형 및 데이터 유형은 무엇입니까? (0) | 2023.07.25 |
Python의 조건부 문장 포함) (0) | 2023.07.25 |
로컬 도커에서 호스팅되는 mariadb에 연결하는 스프링 부트 (0) | 2023.07.25 |