You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Plotly Python调整热图列间距、刻度及尺寸?

解决Plotly Express热图的尺寸与刻度问题

针对你遇到的热图过窄、刻度不全的问题,可以通过以下几个参数调整来解决:

1. 设置方正的热图尺寸

直接在px.imshow()中添加width和height参数,指定相同数值即可得到方正的热图,示例如下:

fig = px.imshow(df, origin='lower', color_continuous_scale='viridis',
                labels={"x": "OF Ratio (%weight)", "y": "Pressure (atm)", "hover": "Isp"},
                title="Specific Impulse of LOX, RP1 Engine",
                width=800, height=800)  # 指定相同宽高实现方正效果

2. 显示所有索引与列标签

Plotly默认会自动合并部分重复或密集的刻度,要强制显示每一个标签,需通过update_layout()手动指定刻度值与文本:

# 接上面的fig定义,添加刻度设置
fig.update_layout(
    xaxis=dict(
        tickmode='array',
        tickvals=df.columns,  # 用DataFrame的列作为刻度值
        ticktext=[str(col) for col in df.columns],  # 转为字符串避免浮点显示问题
        tickangle=45  # 旋转刻度文本,防止标签重叠
    ),
    yaxis=dict(
        tickmode='array',
        tickvals=df.index,  # 用DataFrame的索引作为刻度值
        ticktext=[str(idx) for idx in df.index]
    )
)

fig.show()

3. 调整单元格间距(列/行宽度)

热图的单元格宽度由整体尺寸和行列数自动分配,若觉得单元格过窄,只需增大width和height的数值即可。比如将尺寸调到1000,每个单元格会自动变宽,配合刻度旋转就能清晰显示所有标签。

内容的提问来源于stack exchange,提问作者ali Gangeh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 03:15:04