gpt4 book ai didi

python - Matplotlib 毫秒在 x 轴上打勾

转载 作者:行者123 更新时间:2023-12-04 11:26:55 24 4
gpt4 key购买 nike

我正在尝试使用 Matplotlib 从 csv 文件中绘制时间序列数据。下面是 csv 文件的前几行。

YYYY-MO-DD HH-MI-SS_SSS,X,Y,Z
2019-12-15 11:01:35.000,-0.2937,0.8477,2.2274
2019-12-15 11:01:35.005,-0.2937,0.8477,2.2274
2019-12-15 11:01:35.010,-0.2937,0.8477,2.2274
2019-12-15 11:01:35.014,0.3231,-1.7574,-4.6244
2019-12-15 11:01:35.021,0.3231,-1.7574,-4.6244
2019-12-15 11:01:35.025,0.3231,-1.7574,-4.6244
2019-12-15 11:01:35.030,0.7319,-4.9294,-4.6236
2019-12-15 11:01:35.035,0.7319,-4.9294,-4.6236

间隔为 5 毫秒 (200 Hz),文件包含一秒的数据(200 行)。我的目标是每 100 毫秒设置一次主要的 x-ticks,即:

35.000, 35.100, 35.200, ...., 35.800, 35.900

我尝试使用 dateFormatter 但无法管理。我怎样才能做到这一点?
#import packages
from matplotlib import pyplot as plt
from matplotlib import dates
from pandas.plotting import register_matplotlib_converters
register_matplotlib_converters()
import pandas as pd
import numpy as np
#import math
%matplotlib inline

df = pd.read_csv("one-second.csv",index_col="YYYY-MO-DD HH-MI-SS_SSS",parse_dates=True)

fig_1, axes = plt.subplots(3, 1, figsize=(12,12),constrained_layout=True)
axes[0].plot(df['X'],color='red')
axes[0].xaxis.set_major_formatter(dates.DateFormatter("%S.%f"))
axes[0].set_title("X Signal")
axes[0].set_xlabel('Time')
axes[0].set_ylabel('Amplitude')
axes[1].plot(df['Y'],color='green')
axes[1].set_title("Y Signal")
axes[1].set_xlabel('Time')
axes[1].set_ylabel('Amplitude')
axes[2].plot(df['Z'],color='blue')
axes[2].set_title("Z Signal")
axes[2].set_xlabel('Time')
axes[2].set_ylabel('Amplitude')

这就是我到目前为止的管理方式。

plot so far

最佳答案

感谢您的投入,它帮助我进一步挖掘并找到一个(可能)更好的方法,如下所示。

ax2 = df['Y'].plot(figsize=(12,5),color='red')
ax2.set(xlabel='second.microseconds')
ax2.xaxis.set_major_locator(dates.MicrosecondLocator(interval=100000, tz=None))
ax2.xaxis.set_major_formatter(dates.DateFormatter('%S.%f'))

enter image description here

关于python - Matplotlib 毫秒在 x 轴上打勾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61089845/

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