Как я могу создавать основные отметки Tick каждый час, используя столбцы местного времени - PullRequest
0 голосов
/ 31 января 2020

Я конвертирую json данные в фрейм данных. Кадр данных содержит метки времени UT C, которые были преобразованы в локальное время. Я создаю гистограмму, но слишком много ярлыков с отметками. Я хочу сохранить все галочки, но только ярлык каждый час или около того. Нужно ли конвертировать мою метку времени? Я супер новичок в python, я слишком много пытался и не могу понять это.

from dateutil import tz
import datetime
import matplotlib.dates as mdates
import matplotlib.ticker as ticker


pd.options.mode.chained_assignment = None  # default='warn'

data1 = df[['requestId', 'assignTime', 'queueTime', 'finishTime', 'result']] #create table data1
data1["waitTime"] = None  # add new empty columns
data1["duration"] = None

data1['assignTime'] = (pd.to_datetime(data1['assignTime']) # convert utc time to local time
                     .dt.tz_convert('America/New_York'))    
data1['queueTime'] = (pd.to_datetime(data1['queueTime']) # convert utc time to local time
                     .dt.tz_convert('America/New_York'))    
data1['finishTime'] = (pd.to_datetime(data1['finishTime']) # convert utc time to local time
                     .dt.tz_convert('America/New_York'))    

data1['waitTime'] = (data1['assignTime'] - data1['queueTime']).astype('timedelta64[m]') #calculate wait time and duration
data1['duration'] = (data1['finishTime'] - data1['assignTime']).astype('timedelta64[m]')

data1 = data1.sort_values(by="queueTime")#sort the data by queue time chronologically

y = data1.waitTime
x = data1.queueTime


ax = data1[['waitTime','duration']].plot(kind='bar', title ="Jobs", figsize=(15, 15), legend=True, fontsize=12)
ax.set_xlabel("Time of day", fontsize=12)
ax.set_ylabel("Minutes", fontsize=12)



plt.show()

Вот некоторые из моих данных

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...