注意,这个问题与[Defining bin width/x-axis scale in Matplotlib histogram有关。 我有一个看起来像这样的数据
Time Pressure
1/1/2017 0:00 5.8253
... ...
3/1/2017 0:10 4.2785
4/1/2017 0:20 5.20041
5/1/2017 0:30 4.40774
6/1/2017 0:40 4.03228
7/1/2017 0:50 5.011924
12/1/2017 1:00 3.9309888
我想绘制直方图,使其看起来像这样。间隔如下 - [0-40,60,65,70,75,80]
答案 0 :(得分:0)
您可以使用numpy.histogram()
生成直方图,然后使用Axes.bar()
绘制直方图。然后可以使用Axes.set_ticklabels()
调整刻度。这是一个例子:
import numpy as np
from matplotlib import pyplot as plt
#some fake data:
data = np.random.normal(70,20,[100])
#the histogram
dist, edges = np.histogram(data,bins=[0,40,60,65,70,75,80])
#the plot
fig,ax = plt.subplots()
ax.bar(
np.arange(dist.shape[0]), dist, width=1, align = 'edge',
color = [1,0,0,0.5], edgecolor=[1,0,0,1], lw = 2,
)
ax.set_xticks(np.arange(edges.shape[0]))
ax.set_xticklabels(edges)
plt.show()
整件事看起来像这样:
希望这有帮助。