Matplotlib из атрибутов JSON в Python - PullRequest
0 голосов
/ 04 ноября 2019

Я пытаюсь превратить атрибуты этого файла json в matplotlib, где x на графике "показывает количество подписчиков" и y "частоту пользователей, у которых есть это конкретное количество подписчиков".

вот как мойjson-файл выглядит как

[{"user": "person1", "follower": 1008, "following": 2520},
 {"user": "person2", "follower": 144, "person3": 394},
 {"user": "person4", "follower": 483, "following": 1582},...]

Я уже импортировал json-файл в python, но не могу понять, как использовать определенный атрибут для рисования графика в matplotlib (не pandas plot)

import pandas as pd
import json
instagram = json.loads(open('J:\\data.json').read())
df = pd.DataFrame(instagram)
print (df)
df.plot(x='user', y='follower')

Ответы [ 2 ]

0 голосов
/ 04 ноября 2019

Вот как вы можете показать подписчиков по оси x и частоту пользователей с таким количеством подписчиков по оси y

import pandas as pd
import matplotlib.pyplot as plt

# if you are running in jupyter notebook - uncomment the below line
# %matplotlib inline

d = [{"user": "person1", "follower": 1008, "following": 2520},\
     {"user": "person6", "follower": 1008, "following": 2520},\
     {"user": "person7", "follower": 1008, "following": 2520},\
     {"user": "person3", "follower": 1008, "following": 123},\
     {"user": "person2", "follower": 144, "following": 394},\
     {"user": "person5", "follower": 144, "following": 987},\
     {"user": "person4", "follower": 483, "following": 1582}]

df = pd.DataFrame(d)
dfg = df.groupby('follower').count()

# using matplotlib scatter chart
plt.scatter(x=dfg.index, y=dfg['user'])
plt.show()

# using pandas plot
dfg.plot()
0 голосов
/ 04 ноября 2019

Вы можете использовать:

import matplotlib.pyplot as plt
plt.scatter(df['x'], df['y'])
plt.show()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...