You need to enable JavaScript to run this app. 如何在Plotly绘图x轴设置工程格式,将1e9的B后缀改为SI标准G后缀
优惠活动
大模型
产品
解决方案
定价
更多

如何在Plotly绘图x轴设置工程格式,将1e9的B后缀改为SI标准G后缀

Plotly 轴计数格式调整方案

你可以通过修改轴的tickformat配置及自定义单位映射同时满足两个需求,具体实现方式如下:

方法1:针对单张图表快速调整

直接通过update_xaxes方法配置参数即可,示例代码如下:

import plotly.express as px
import pandas as pd

# 示例数据构造
df = pd.DataFrame({
    "数值": [1e6, 5e8, 1e9, 3e9, 7e9],
    "指标": [12, 28, 19, 35, 22]
})

fig = px.line(df, x="数值", y="指标")

# 核心配置:x轴启用工程计数+替换B为G后缀
fig.update_xaxes(
    tickformat=".1s",  # 启用SI标准工程计数格式
    # 自定义刻度标签替换规则
    tickmode="array",
    tickvals=df["数值"],
    ticktext=[
        f"{v/1e9:.1f}G" if v >= 1e9 
        else f"{v/1e6:.1f}M" if v >= 1e6 
        else f"{v/1e3:.1f}k" if v >= 1e3
        else str(v) 
        for v in df["数值"]
    ]
)

fig.show()

方法2:全局配置生效(适用所有图表)

如果需要所有绘制的图表默认使用该规则,可以修改Plotly全局模板配置:

import plotly.io as pio

# 复制默认模板生成自定义模板
custom_template = pio.templates["plotly"].copy()
# 全局设置x轴默认使用SI工程计数格式
custom_template.layout.xaxis.tickformat = ".1s"
# 配置单位映射,将1e9对应的默认后缀B替换为G
custom_template.layout.xaxis.tickformatdefaults = "s"
# 应用自定义模板为全局默认
pio.templates.default = custom_template

该配置生效后,后续所有生成的图表x轴都会自动使用带G后缀的SI工程计数格式,无需逐图配置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.17 01:54:04