如何绘制此类数据的直方图,
10 apples
3 oranges
6 tomatoes
10 pears
来自文本文件?
感谢
答案 0 :(得分:6)
这是一种可以为条形指定不同颜色的方法。它甚至可以使用不同数量的条形图。
import numpy as np
import pylab
import matplotlib.cm as cm
arr = np.genfromtxt('data', dtype=None)
n = len(arr)
centers = np.arange(n)
colors = cm.RdYlBu(np.linspace(0, 1, n))
pylab.bar(centers, arr['f0'], color=colors, align='center')
ax = pylab.gca()
ax.set_xticks(centers)
ax.set_xticklabels(arr['f1'], rotation=0)
pylab.show()
答案 1 :(得分:2)
正如其他人所说,Matplotlib是你的朋友。像
这样的东西import numpy as np
import matplotlib.pyplot as plt
plt.figure()
indices = np.arange(4)
width = 0.5
plt.bar(indices, [10, 3, 6, 10], width=width)
plt.xticks(indices + width/2, ('Apples', 'Oranges', 'Tomatoes', 'Pears'))
plt.show()
会让你开始。从文本文件加载数据是直截了当的。
答案 2 :(得分:1)
Matplotlib是可用的通行证之一。看一看,它有很多例子。如果你无法绘制直方图,那么你可以提出另一个问题,我相信会有很多人帮忙。
以下是一些例子:
http://matplotlib.sourceforge.net/examples/pylab_examples/histogram_demo_extended.html