Python:在 matplotlib.pyplot 上绘制子列表
Python: Plotting sublists on matplotlib.pyplot
我想绘制带有子列表的列表,每个子列表包含名称和分数。
子列表 item one = name
为 X-label
,item two = score
为 Y label
.
datacount = (("mike", 9), ("john", 8), ("smith", 7), ("niki", 7), ("garlick", 7),
("don", 7), ("ross", 7), ("darli", 6), ("nick", 6), ("perl", 6),
("cat", 5), ("dona", 4))
如何在 plt 中绘制它?
我试过这个就像它的字典一样,但它没有显示所有的名字和相应的分数。
import matplotlib.pyplot as plt
datacount = D
plt.bar(range(len(D)), D.values(), align='center')
plt.xticks(range(len(D)), D.keys())
plt.show()
假设你有一个元组列表,你可以使用zip
解包X和Y元素,然后做条形图; tick_label
可用于标记您的 x 轴:
import matplotlib.pyplot as plt
%matplotlib inline
plt.figure(figsize = (10, 7))
X, Y = zip(*datacount)
ax = plt.bar(range(len(X)), Y, 0.6, align='center', tick_label = X, color="sienna")
我想绘制带有子列表的列表,每个子列表包含名称和分数。
子列表 item one = name
为 X-label
,item two = score
为 Y label
.
datacount = (("mike", 9), ("john", 8), ("smith", 7), ("niki", 7), ("garlick", 7),
("don", 7), ("ross", 7), ("darli", 6), ("nick", 6), ("perl", 6),
("cat", 5), ("dona", 4))
如何在 plt 中绘制它?
我试过这个就像它的字典一样,但它没有显示所有的名字和相应的分数。
import matplotlib.pyplot as plt
datacount = D
plt.bar(range(len(D)), D.values(), align='center')
plt.xticks(range(len(D)), D.keys())
plt.show()
假设你有一个元组列表,你可以使用zip
解包X和Y元素,然后做条形图; tick_label
可用于标记您的 x 轴:
import matplotlib.pyplot as plt
%matplotlib inline
plt.figure(figsize = (10, 7))
X, Y = zip(*datacount)
ax = plt.bar(range(len(X)), Y, 0.6, align='center', tick_label = X, color="sienna")