В настоящее время я использую Matplotlib для создания гистограммы:
import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as pyplot
...
fig = pyplot.figure()
ax = fig.add_subplot(1,1,1,)
n, bins, patches = ax.hist(measurements, bins=50, range=(graph_minimum, graph_maximum), histtype='bar')
#ax.set_xticklabels([n], rotation='vertical')
for patch in patches:
patch.set_facecolor('r')
pyplot.title('Spam and Ham')
pyplot.xlabel('Time (in seconds)')
pyplot.ylabel('Bits of Ham')
pyplot.savefig(output_filename)
Я хотел бы сделать метки оси X немного более значимыми.
Во-первых, тики x-оси здесь, по-видимому, ограничены пятью тиками. Независимо от того, что я делаю, я не могу изменить это, даже если я добавлю больше xticklabels, он использует только первые пять. Я не уверен, как Matplotlib вычисляет это, но я предполагаю, что он автоматически вычисляется из диапазона/данных?
Есть ли способ увеличить разрешение ярлыков x-tick - даже до точки для каждого бара/бина?
(В идеале, мне бы хотелось, чтобы секунды были переформатированы в микросекундах/миллисекундах, но это вопрос на другой день).
Во-вторых, я бы хотел, чтобы каждый отдельный бар помечен - фактическим номером в этом бункере, а также процентом от общего количества всех ящиков.
Конечный результат может выглядеть примерно так:
Возможно ли подобное с Matplotlib?
Cheers, Виктор