我正在尝试使用for循环和主key ="business_id"
绘制多个图形。它是一个json文件。
这是我的代码: 它仅绘制第一个图形,即仅针对第一个业务ID而不是剩余的id。我怎样才能使它适用于所有ID
data=f.read()
jsondata=json.loads(data)
z=[]
for row in jsondata['rows']:
id=row['business_id']
print id
for i in id:
for row in jsondata['rows']:
y= row['checkin_info']
x=int(y['one p.m'])
x2=int(y['two p.m'])
x3=int(y['three p.m'])
x4=int(y['four p.m'])
x5=int(y['five p.m'])
x6=int(y['six p.m'])
x7=int(y['seven p.m'])
x8=int(y['eight p.m'])
x9=int(y['nine p.m'])
x10=int(y['ten p.m'])
x11=int(y['eleven p.m'])
x12=int(y['twelve p.m'])
z.append(x)
z.append(x2)
z.append(x3)
z.append(x4)
z.append(x5)
z.append(x6)
z.append(x7)
z.append(x8)
z.append(x9)
z.append(x10)
z.append(x11)
z.append(x12)
time_slots=["one p.m","two p.m","three p.m","four p.m","five
p.m","six p.m","seven p.m","eight p.m","nine
p.m","ten.pm","eleven p.m","twelve p.m"]
pylab.figure(1)
x = range(12)
pylab.xticks(x, time_slots)
pylab.plot(x,z,"g")
pylab.show()
答案 0 :(得分:0)
不幸的是,你的json文件结构对我来说并不清楚。也许你错过了代码中的一些缩进级别。因此,我建议几种解决方案。如果您必须浏览所有ID,那么最好将ID存储在列表中:
ids=[]
for row in jsondata['rows']:
id=row['business_id']
ids.append(id)
print id
第二个选项:你的数字必须编号,show()函数必须在for循环之外
for i, id in enumerate(ids):
...
pylab.figure(i)
...
pylab.show()