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

如何在Plotly中将X轴设置为德语月份格式

将Plotly图表X轴美式月份缩写替换为德语缩写的解决方案

如果需要把Plotly折线图X轴的美式月份缩写替换为德语版本,比如Oct→Okt、Dec→Dez,可以用以下两种方法实现:

方法一:利用Plotly区域设置自动切换

Plotly支持通过区域设置(locale)自动适配不同语言的日期格式,直接指定德语区域即可让%b格式符输出德语月份缩写。修改后的代码如下:

import plotly.express as px

df = px.data.stocks()
fig = px.line(df, x="date", y=df.columns, title='custom tick labels')
# 配置X轴为每月刻度,并用德语区域显示月份缩写
fig.update_xaxes(
    dtick="M1",
    tickformat="%b %y",
    tickformatoptions=dict(locale='de')
)
fig.show()

执行后,X轴会自动显示德语标准月份缩写:Mar→Mrz、Oct→Okt、Dec→Dez,完全匹配需求。

方法二:手动自定义刻度标签

如果需要对特定月份进行非标准缩写替换(比如你提到的May替换为Mrz),可以手动生成刻度值和对应标签,精准控制显示内容:

import plotly.express as px
import pandas as pd

df = px.data.stocks()
fig = px.line(df, x="date", y=df.columns, title='custom tick labels')

# 定义美式到目标德语缩写的映射表
month_abbr_map = {
    'Jan': 'Jan',
    'Feb': 'Feb',
    'Mar': 'Mrz',
    'Apr': 'Apr',
    'May': 'Mrz',  # 按需求将May替换为Mrz
    'Jun': 'Jun',
    'Jul': 'Jul',
    'Aug': 'Aug',
    'Sep': 'Sep',
    'Oct': 'Okt',
    'Nov': 'Nov',
    'Dec': 'Dez'
}

# 处理日期数据,提取每月第一天作为刻度值
df['date'] = pd.to_datetime(df['date'])
tick_vals = df['date'].dt.to_period('M').dt.start_date.unique()
# 根据映射表生成自定义标签
tick_text = [f"{month_abbr_map[d.strftime('%b')]} {d.strftime('%y')}" for d in tick_vals]

# 配置X轴使用自定义刻度
fig.update_xaxes(
    tickmode='array',
    tickvals=tick_vals,
    ticktext=tick_text
)
fig.show()

这种方法可以完全自定义每个刻度的显示文本,满足特殊场景的缩写需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 20:05:39