sns.heatmap 热力图的添加,约束格子的高度,设置刻度条字体大小

def add_heat_fig(self,df,fig_explain_str,fig_size):
    """添加热力图"""
    df1 = df * 100
    df1["设备"] = df1.index + ' ' + df1["date_mean"].apply(lambda x:str('%.2f' % x)) + '%'
    df1.set_index(['设备'], inplace=True)
    df1.columns = df1.columns + '\n ' + df1.iloc[-1, :].round(2).map(str) + '%'
    df_fig = df1.iloc[:-1, :-1]

    w = 6
    dfw = df_fig.shape[0]
    if dfw>22:
        w += (dfw-22)*0.16 #在doc中,定一个设备格子宽度为0.25cm=0.16英尺
    if w>23.8:
        w = 23.8
    #math.ceil( x ) 向上取整
    f, ax = plt.subplots(figsize=(9, w))

    sns_plot = sns.heatmap(df_fig, ax=ax, vmin=0, vmax=100, cmap='Greens', annot=False, linewidths=2, cbar=True,
                cbar_kws={"orientation": "horizontal"},yticklabels=1)
    # 设置坐标字体方向,通过rotation参数可以调节旋转角度
    label_y = ax.get_yticklabels()
    plt.setp(label_y, rotation=360, horizontalalignment='right')
    label_x = ax.get_xticklabels()
    plt.setp(label_x, rotation=60, horizontalalignment='right')

    sns_plot.tick_params(labelsize='medium')  # heatmap 刻度字体大小 10
    # colorbar 刻度线设置
    cax = plt.gcf().axes[-1]
    cax.tick_params(labelsize=10)  # colorbar 刻度字体大小
    # plt.show()
    self.insert_fig(fig_explain_str,fig_size)
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值