cdkeycdma 发表于 2020-9-7 18:23:14

请问如何把绘图的横坐标改成时间轴?

import random
import matplotlib.pyplot as plt
fig = plt.figure()
ax = plt.gca()   
x = []
y = []
i=0
plt.ion()
while True:
    x.append(i)   
    y.append(random.randint(1,1000))
    plt.xlim()
    plt.ylim()
    plt.title('Scatter Graph')
    plt.grid(True)   
    plt.plot(x,y,'y',linewidth=1)
    plt.pause(0.05)
    i += 50      


这个代码的横坐标是数字,请问如何改成时间,比如9:00-16:00,每个刻度为1分钟

疾风怪盗 发表于 2020-9-7 22:18:57

是这样么?

import random
import matplotlib.pyplot as plt
import pandas as pd

fig = plt.figure()
ax = plt.gca()
x = []
y = []
i=0
plt.ion()
time_range=pd.date_range(start='09:00',end='16:00',periods=6)
time_range= for i in time_range]
ax.set_xticklabels(time_range)
fig.autofmt_xdate()#自适应调整

while True:
    x.append(i)
    y.append(random.randint(1,1000))
    plt.xlim()
    plt.ylim()
    plt.title('Scatter Graph')
    plt.grid(True)
    plt.plot(x,y,'y',linewidth=1)
    plt.pause(0.05)
    i += 50

bonst 发表于 2020-9-8 19:44:21

这个是我的方法,生成的Xi可以作为横轴刻度
x=[]
for i in range(0,24):
    x.append(str(i)+':00-'+str(i+1)+':00')
Xi = np.array(x)
print(Xi)
页: [1]
查看完整版本: 请问如何把绘图的横坐标改成时间轴?