从datetime64 [ns]重新格式化为date [d]

时间:2020-06-04 00:05:31

标签: python pandas matplotlib

如何更改绘图中的日期以仅显示日期而不显示datetime64 [ns]?我想删除时间(MM-DD-YYYY)

import requests
import pandas as pd
import datetime
import matplotlib.pyplot as plt
import pylab
import matplotlib.dates as mdates 
import numpy as np
%matplotlib inline

import json

with open('outputfile.json') as f:
data = json.load(f)

dates = [item['created_at'] for item in data['data']['prices']]
values = [item['price'] for item in data['data']['prices']]

df = pd.DataFrame(({'dates':dates, 'values':values}))
df['dates']  = [pd.to_datetime(i) for i in df['dates']]

fig, ax = plt.subplots()
plt.setp(ax.xaxis.get_majorticklabels(), rotation=90)
plt.plot(dates, values)
plt.xlabel('Time')
plt.ylabel('Price')

clip of my plot

1 个答案:

答案 0 :(得分:1)

您可能正在寻找的是TimeStamp.strftime()方法。它允许您将日期对象格式化为具有您选择的格式的字符串。 (由于某些原因,指向该文档的链接实际上没有用。更多详细信息显示在here中)

这是可用于按日期格式化日期的所有符号类型的便捷参考:https://strftime.org/