python使用matplotlib打印json文件数据
我有下面的json文件,我想根据字节和时间戳制作条形图。请注意,文件上提供的时间戳不符合顺序,它们需要python使用matplotlib打印json文件数据,python,json,python-3.x,matplotlib,Python,Json,Python 3.x,Matplotlib,我有下面的json文件,我想根据字节和时间戳制作条形图。请注意,文件上提供的时间戳不符合顺序,它们需要 { "success":true, "data":[ { "record_id":258585618, "timestamp":"2018-01-21 22:34:34", "bytes":29466, }
{
"success":true,
"data":[
{
"record_id":258585618,
"timestamp":"2018-01-21 22:34:34",
"bytes":29466,
}
,
{
"record_id":258585604,
"timestamp":"2018-01-21 22:33:14",
"bytes":37892,
}
,
{
"record_id":258584399,
"timestamp":"2018-01-21 22:37:40",
"bytes":36396,
}
]
}
非常感谢 编辑:我现在已经对条形图的日期进行了排序 你可以这样做:
import json
import pandas as pd
import matplotlib.pyplot as plt
%matplotlib inline
data = json.dumps({
"success":True,
"data":[
{
"record_id":258585618,
"timestamp":"2018-01-21 22:34:34",
"bytes":29466,
}
,
{
"record_id":258585604,
"timestamp":"2018-01-21 22:33:14",
"bytes":37892,
}
,
{
"record_id":258584399,
"timestamp":"2018-01-21 22:37:40",
"bytes":36396,
}
]
})
data = json.loads(data)
dates = [i['timestamp'] for i in data["data"]]
values = [i['bytes'] for i in data['data']]
df = pd.DataFrame({'dates':dates, 'values':values})
df['dates'] = [pd.to_datetime(i) for i in df['dates']]
print(df.sort_values(by='dates'))
dates values
1 2018-01-21 22:33:14 37892
0 2018-01-21 22:34:34 29466
2 2018-01-21 22:37:40 36396
plt.bar(dates, values)
到目前为止,您尝试了什么?请张贴您的代码。我刚刚注意到您需要订购时间戳,它们是否也应该是x轴标签?我认为这是一件装饰性的事情,但如果也能实现,将不胜感激。