Я хочу отображать значения оси X на моей экспресс-диаграмме в стандартном формате, а не использовать необработанные метки; сохраняя при этом макеты галочек.
По сути, мне нравится тот факт, что есть только несколько «основных» галочек, а не галочка для каждого значения, но мне нужно чтобы изменить текст меток.
В настоящее время метки представляют собой целочисленные значения, представляющие миллисекунды. Я хотел бы изменить их на мин:сек:мс, как показано на рисунке ниже. Обратите внимание, что столбец «Время» в «df» представляет миллисекунды в правильном формате.
Я пытался выяснить это, используя «Array» ' и сортировку, но это либо сортирует диаграмму (что мне не нужно), либо созданные метки расположены неравномерно и не округляются до ближайшей секунды.
Текущий прогресс и пример кода
Вот мой исходный код до того, как я его испортил!
Можно ли как-нибудь изменить метки на галочках по умолчанию, чтобы мне не приходилось искать способ их переделать? df["Time"] Содержит значения в правильном формате, который мне нужен.
Ожидаемый результат
Пример ( метки по оси X) того, чего я хочу достичь (изменения желтого цвета заменят уже имеющиеся галочки):
Я хочу [b]отображать значения оси X на моей экспресс-диаграмме в стандартном формате[/b], а не использовать необработанные метки; сохраняя при этом макеты галочек.
По сути, мне нравится тот факт, что есть только несколько «основных» галочек, а не галочка для каждого значения, но мне нужно чтобы изменить текст меток. В настоящее время метки представляют собой целочисленные значения, представляющие миллисекунды. Я хотел бы изменить их на мин:сек:мс, как показано на рисунке ниже. Обратите внимание, что столбец «Время» в «df» представляет миллисекунды в правильном формате. Я пытался выяснить это, используя «Array» ' и сортировку, но это либо сортирует диаграмму (что мне не нужно), либо созданные метки расположены неравномерно и не округляются до ближайшей секунды. Текущий прогресс и пример кода Вот мой исходный код до того, как я его испортил! [code]import pandas as pd import numpy as np import plotly.express as px from _plotly_utils.colors import n_colors from scipy import stats import streamlit as st
def lap_times_graph(year, d_ids, laps_df, races_df, col=st): for d_id in d_ids: times = {"x": [], "y": [], "Name": [], "Lap": [], "Time": []}
# Obtains each race the selected driver was in for the selected year # races_df = races_df.loc[races_df["year"] == year, ["race_id", "name"]] races_df = races_df[races_df["year"] == year] for index, r in races_df.iterrows(): df_laps = laps_df.loc[ (laps_df["race_id"] == r["race_id"]) & (laps_df["driver_id"] == d_id), ["lap", "time", "milliseconds"] ] df_laps2 = df_laps.sort_values(by="milliseconds")
for ndx, r1 in df_laps.iterrows(): times["x"].append(r1["milliseconds"]) times["y"].append(r["race_id"]) times["Name"].append(r["name"]) times["Lap"].append(r1["lap"]) times["Time"].append(r1["time"])
lap_times_graph(year, driver_ids, laps_df, races_df) [/code] Можно ли как-нибудь изменить метки на галочках по умолчанию, чтобы мне не приходилось искать способ их переделать? df["Time"] Содержит значения в правильном формате, который мне нужен. Ожидаемый результат Пример ( метки по оси X) того, чего я хочу достичь ([b]изменения желтого цвета заменят уже имеющиеся галочки[/b]): [img]https://i.sstatic.net/CF4ooirk.png[/img]