Как Постройте гистограмму такого рода данные,Python: сюжетные данные из текстового файла
10 apples
3 oranges
6 tomatoes
10 pears
из текстового файла?
спасибо
Как Постройте гистограмму такого рода данные,Python: сюжетные данные из текстового файла
10 apples
3 oranges
6 tomatoes
10 pears
из текстового файла?
спасибо
Здесь вы можете назначить разные цвета для баров. Он работает даже с переменным числом баров.
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()
Я уверен, что вы можете сделать это без необходимости обработки x-позиционирования ('sep',' width', 'left',' center'). Фактически, вы можете просто использовать 'range (n)' для 'set_xticks()' и использовать параметр 'align = 'center'' для' bar() '. – EOL
@EOL: Большое спасибо за подсказку! Редактирование ... – unutbu
Рад, что вы нашли замечание полезным. Вот еще одно замечание: проще установить 'dtype = None' в' genfromtxt() ': типы данных правильно выведены; вы также получаете в качестве бесплатного бонуса пропущенный код с именами фруктов длиной более 20 символов. :) – EOL
Феликс прав.
Matplotlib является одним из доступных пошлин. Взгляните, у него много примеров. Если вы не можете нарисовать гистограмму, тогда вы можете задать другой вопрос, и я уверен, что будет много людей, чтобы помочь.
Вот некоторые примеры:
http://matplotlib.sourceforge.net/examples/pylab_examples/histogram_demo_extended.html
Как другие полагают, 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()
поможет вам начать работу. Загрузка данных из текстового файла выполняется прямо.
Посмотрите [Matplotlib] (http://matplotlib.sourceforge.net/index.html). –