簡體   English   中英

在Seaborn熱圖中將標題移動到顏色條上方

[英]Moving title above the colorbar in Seaborn heatmap

我在Seaborn制作了熱圖,我有一個相應的水平顏色條。 我已經為顏色條添加了一個標題,但是當我真正想要它時,標題會出現在顏色條下方。 有什么可以改變這個的原因嗎? 是否可以更改標題的字體大小和顏色條上標簽的大小?

fig, ax = plt.subplots(figsize=(30,12))
graph = sns.heatmap(df_pivot, cmap="Blues", linecolor="white", linewidths=0.1, 
            cbar_kws={"orientation": "horizontal", "shrink":0.40, "aspect":40, "label": "Number of accidents"})


ax.set_title("Number of traffic accidents per day & hour combination", 
fontsize=30, fontweight="bold")

from matplotlib import rcParams
rcParams['axes.titlepad'] = 70 # Space between the title and graph

locs, labels = plt.yticks() # Rotating row labels
plt.setp(labels, rotation=0) # Rotating row labels

ax.xaxis.tick_top() # x axis on top
ax.xaxis.set_label_position('top')

graph.tick_params(axis='both',labelsize=15) # Tick label size
graph

這就是它到目前為止的樣子。 我希望“事故數”標題高於彩條,但低於熱圖。 我希望顏色條與熱圖一樣寬。

在此輸入圖像描述

將顏色條繪制在單獨的繪圖中,就像在此示例中一樣。 欲了解更多信息,請閱讀評論:

import matplotlib.pyplot as plt
import numpy as np; np.random.seed(0)
import seaborn as sns; sns.set()

flights = sns.load_dataset("flights")
flights = flights.pivot("month", "year", "passengers")

# set height ratios of heatmap and coresponding colorbar
# hspace shows space between plots
# adjust hspace to put your title of colorbar correctly
grid_kws = {"height_ratios": (.9, .05), "hspace": .15}
f, (ax, cbar_ax) = plt.subplots(2, gridspec_kw=grid_kws, figsize=(30,12))
ax = sns.heatmap(flights, ax=ax,
    cbar_ax=cbar_ax,
    cbar_kws={"orientation": "horizontal","label": "Number of accidents"})

# set title and set font of title
ax.set_title("Number of traffic accidents per day & hour combination", 
fontsize=30, fontweight="bold")

# set font size of colorbar labels
cbar_ax.tick_params(labelsize=25) 

plt.show()

在此輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM