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

Plotly合并图表后如何保持原Reds连续色阶?

解决Plotly合并图表后连续色阶被重置的问题

问题核心是合并无着色需求的trace后,Plotly会重置全局色轴配置。直接修改最终图表的全局色轴参数即可恢复Reds色阶,步骤如下:

  • 给救护站点数据的trace指定固定颜色(比如灰色),避免它参与连续色阶的计算
  • 在最终的go.Figure中直接配置全局coloraxis,指定色阶和数值范围

示例代码:

import plotly.express as px
import plotly.graph_objects as go

# 1. 生成带Reds色阶的散点图
df_main = ...  # 你的主数据集
fig_px = px.scatter(
    df_main,
    x='x_col', y='y_col',
    color='value_col',
    color_continuous_scale='Reds',
    range_color=(0.5, 2)
)

# 2. 创建合并后的图表,添加救护站点数据
fig = go.Figure(data=fig_px.data)
# 救护站点数据用固定颜色,不关联连续色阶
fig.add_trace(go.Scatter(
    x=ambulance_x, y=ambulance_y,
    mode='markers',
    marker=dict(color='gray', size=8),
    name='救护站点'
))

# 3. 重置全局色轴,恢复Reds色阶和指定范围
fig.update_layout(
    coloraxis=dict(
        colorscale='Reds',
        range=[0.5, 2]
    )
)

fig.show()

为什么之前的marker_colorscale无效?因为这个参数是针对单个trace的色阶配置,而救护站点的trace没有绑定数值型的color字段,Plotly会默认使用全局的coloraxis配置,合并后全局配置被重置为默认的Viridis,因此直接修改layout.coloraxis才是有效的解决方案。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 22:05:21