지금까지 성공하지 못한 matplotlib를 사용하여 얻은 히트맵 컬러바의 레이블과 눈금을 의상화해야 합니다. 내 데이터는 이미 게시되었으며 다음 위치에서 찾을 수 있습니다.[1] [1]: pandas 데이터 프레임의 불완전한 plt.show() 그림
내 작업 코드:
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
import seaborn as sns
df = pd.read_csv("deltaGdata.csv")
df1 = df[['VARIANT', 'DDgun','mCSM', 'SDM', 'DeepDDG', 'DynaMut2']]
df1.set_index(['VARIANT'],inplace=True)
sns.set(rc = {'figure.figsize':(7, 20)}) # (width_inches, width_height)
ax = sns.heatmap(df1, cmap='rocket')
ax.set_yticks(np.arange(len(df1)) + .5)
ax.set_yticklabels(df1.index,fontname='DejaVu Sans', fontsize=14.5, fontweight='550' )
ax.set_xticklabels(df1,fontname='DejaVu Sans', fontsize=20, fontweight='550', rotation=90)
ax.set_title("ΔΔG (Kcal/mole)", fontname='DejaVu Sans', fontsize=24, fontweight='700')
figure = ax.get_figure()
figure.savefig('fig.png', dpi=300)
figure.savefig('fig.svg', dpi=300, format="svg")
이 코드는 최종 그림의 다른 것과 비교하여 매우 작은 눈금과 숫자가 있는 컬러바가 있는 히트맵을 생성합니다. 컬러바를 사용자 정의하는 방법에 대한 문서가 거의 없고 내 문제를 해결하는 데 유용한 문서가 없다는 것을 알았습니다. 다른 Matplotlib/Seaborn 사용자에게도 도움이 될 것 같아서 도움이 되었으면 합니다.
내 이해는 이것이 레이블 속성의 크기를 지정하는 마지막 서브플롯과 함께 히트맵과 색상 막대 서브플롯으로 구성된다는 것입니다.
print(ax.figure.axes)
[<AxesSubplot:title={'center':'ΔΔG (Kcal/mole)'}, ylabel='VARIANT'>, <AxesSubplot:label='<colorbar>'>]
# Add the following code
ax.figure.axes[-1].tick_params(labelsize=20)
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다