使用以下代码,我创建了四个直方图:
import numpy as np
import pandas as pd
data = pd.DataFrame(np.random.normal((1, 2, 3 , 4), size=(100, 4)))
data.hist(bins=10)
我希望直方图看起来像这样:
我知道如何在当时制作一张图表see here
但是如何在不指定每一个直方图的情况下为多个直方图做到这一点?理想情况下,我可以使用' pd.scatter_matrix'。
答案 0 :(得分:0)
分别绘制每个直方图并按照您链接的示例对每个直方图进行拟合,或者查看hist api example here。基本上应该做的是
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.mlab as mlab
fig = plt.figure()
ax1 = fig.add_subplot(221)
ax2 = fig.add_subplot(222)
ax3 = fig.add_subplot(223)
ax4 = fig.add_subplot(224)
for ax in [ax1, ax2, ax3, ax4]:
n, bins, patches = ax.hist(**your_data_here**, 50, normed=1, facecolor='green', alpha=0.75)
bincenters = 0.5*(bins[1:]+bins[:-1])
y = mlab.normpdf( bincenters, mu, sigma)
l = ax.plot(bincenters, y, 'r--', linewidth=1)
plt.show()