gpt4 book ai didi

python - 如何使用时间作为带有seaborn的散点图的x轴?

转载 作者:行者123 更新时间:2023-12-04 21:01:30 25 4
gpt4 key购买 nike

我有一个简单的数据框,以时间为索引,以虚拟值为例。[ my sample ]
我做了一个简单的散点图,正如你在这里看到的:enter image description here

简单问题:如何调整xaxis ,以便在 xaxis 中可以看到从 00:00 到 23:00 的所有时间值?绘图的其余部分很好,它显示了所有数据点,只是标签。尝试了不同的东西,但没有成功。

到目前为止我所有的代码是:

import pandas as pd
import seaborn as sns
import matplotlib.dates as mdates
from datetime import time

data = []
for i in range(0, 24):
temp_list = []
temp_list.append(time(i))
temp_list.append(i)
data.append(temp_list)

my_df = pd.DataFrame(data, columns=["time", "values"])
my_df.set_index(['time'],inplace=True)
my_df
fig = sns.scatterplot(my_df.index, my_df['values'])
fig.set(xlabel='time', ylabel='values')

最佳答案

我认为您必须为此深入到 matplotlib 级别:

import pandas as pd
import seaborn as sns
import matplotlib.dates as mdates
from datetime import time
import matplotlib.pyplot as plt

data = []
for i in range(0, 24):
temp_list = []
temp_list.append(time(i))
temp_list.append(i)
data.append(temp_list)

df = pd.DataFrame(data, columns=["time", "values"])
df.time = pd.to_datetime(df.time, format='%H:%M:%S')
df.set_index(['time'],inplace=True)
ax = sns.scatterplot(df.index, df["values"])
ax.set(xlabel="time", ylabel="measured values")
ax.set_xlim(df.index[0], df.index[-1])
ax.xaxis.set_major_locator(mdates.HourLocator())
ax.xaxis.set_major_formatter(mdates.DateFormatter("%H:%M:%S"))
ax.tick_params(axis="x", rotation=45)

这产生

enter image description here

关于python - 如何使用时间作为带有seaborn的散点图的x轴?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59390562/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com