我需要4个不同生物的直方图,数据非常不同,但轴的限制和(更重要的是)每个图中所有箱子的宽度应该相等。 我有这个密码
fig, axes = plt.subplots(nrows=2, ncols=2, figsize=(16, 10))
colors = ['tab:red', 'tab:blue', 'tab:green', 'tab:pink']
for i, (ax, Organism) in enumerate(zip(axes.flatten(), data.Organism.unique())):
x = data.loc[data.Organism == Organism, 'Protein Length']
ax.hist(x, density=True, label=str(Organism), color=colors[i], alpha=0.5, rwidth=0.5, bins = 30)
ax.set_xscale("log")
ax.set_xlim([min(data["Protein Length"]), max(data["Protein Length"])])
我还应该指定什么才能使每个位置的箱子宽度相等
提前谢谢
您可以自行设置所有存储箱,而不是设置存储箱的数量:
其中
start_bin
和last_bin
是直方图的起点和终点首先,你可以让你的生活更轻松,使用seaborn。它建立在
matplotlib
之上。处理matplotlib
可能会有点痛苦——需要大量代码,而且它不是无状态的如果你想要更精彩的情节,再加上一点编码,就去plotly
您始终可以计算直方图separately
相关问题 更多 >
编程相关推荐