import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
from mpl_toolkits.axes_grid1 import make_axes_locatable
import matplotlib.cm as cm
import matplotlib.colors as mcl
# Creating a DataFrame with 20 rows and 5 columns
np.random.seed(0)
df = pd.DataFrame(np.random.rand(20, 5), columns=['A', 'B', 'C', 'D', 'E'])
data = {'C1': ['A', 'B', 'C', 'D', 'E'], 'C2': [1, 2, 3, 4, 5]}
df2 = pd.DataFrame(data)
# Normalize C2 values between 0 and 1 to map to the colormap
norm = plt.Normalize(df2['C2'].min(), df2['C2'].max())
cmap = plt.get_cmap('bwr') # 컬러바 종류 설정
cmap = cmap.reversed() # 색상을 반대로 적용하기
fig = plt.figure(figsize=(16, 8))
for column in df.columns[0:]:
score_row = df2[df2['C1'] == column] # df2 의 C1 열과 df의 column이 같은 df2의 행을 찾아 저장
score = score_row['C2'].iloc[0] # score_row에서 C2 열의 0번째 행 데이터 저장
color = cmap(norm(score)) # Using the normalized score to get a color from the colormap
plt.plot(df[column], label=column, color=color, alpha=1, lw=2)
colormapping = cm.ScalarMappable(norm=norm, cmap=cmap) # 컬러바 생성
cbar = fig.colorbar(colormapping, ax=plt.gca(), pad=0.01) # 컬러바 삽입
plt.tight_layout()
plt.show()
'Python' 카테고리의 다른 글
| 일별 종가 데이터로 월별 수익률 구하기 (2) | 2024.07.03 |
|---|---|
| 종가시계열 시각화 컬러맵 (중앙값 기준 정규화) (1) | 2024.04.27 |
| DART 자사주 취득, 무상증자 공시 알림 (0) | 2024.03.25 |
| FN가이드_펀드가이드_기준가격 크롤링 (2) | 2024.03.14 |
| IPO Stock 종합 크롤링 (2) | 2024.03.12 |