希望有人可以帮助访问列表中的单个项目。从条形图列表中获取项目matplotlib
我正在尝试创建一个简单的条形图,从csv文件中计算用户输入列的频率。
这很好,我可以显示一个条形图很好,但我似乎无法理解如何安排数据沿x轴上升/下降。我有代码:
import matplotlib.pyplot as pl
import numpy as np
import sys
import csv
from collections import Counter
import numpy as np
from operator import itemgetter
filename = sys.argv[1]
data = []
with open(filename) as f:
reader = csv.reader(f)
header = reader.next()
header = [head.replace(" ", "_").lower() for head in header]
data = [row for row in reader]
for field in header:
print field
header_name = raw_input("Select field from above: ")
column_no = header.index(header_name)
empty = []
for datarow in data:
empty.append(datarow[column_no])
counted = Counter(empty)
sorted_counted = sorted(counted.items(), key=itemgetter(0))
print sorted_counted
它得到我有项目的排序列表的观点: [( 'AK',6),( 'AR',1),( 'AZ',9) ,('CA',72),('CO',8),('CT',5),('DC',1),('FL',28), '''',4),('''',1),('''',4),('''',15), '',1),('LA',9),('MA',12),('MD',17),('ME',3), ('''',4),('''',1),(''''',1), ,('NH',1),('NJ',52),('NM',2),('NV',2) '''',1),('''',6),('''''',29),('''',5), '',10),('TX',32),('UT',1),('VA',7),('WA',8), 3)]
因为我无法排序t他字典“数”。
那么我的计划是把所有的状态指示符“CO”“CT”“DC”等放在一个列表中,并把所有的数值放在另一个列表中。 从那时起,我可以在图表上绘制这两个列表,并且应该按字母顺序排列状态名称。
有可能是一个更简单的方法来做到这一点,如果这样会很好听。谢谢。