def histogramnd(ax, data, **kwargs):
"""n-dimensional histogram seaborn based
"""
scatter_data_raw = data
scatter_data_cols = ["x_%d" % (i,) for i in range(data.shape[1])]
# prepare dataframe
df = pd.DataFrame(scatter_data_raw, columns=scatter_data_cols)
g = sns.PairGrid(df)
# g.map_diag(plt.hist)
g.map_diag(sns.kdeplot)
g.map_offdiag(plt.hexbin, cmap="gray", gridsize=30, bins="log");
# logger.log(loglevel_debug, "dir(g)", dir(g))
# print g.diag_axes
# print g.axes
# for i in range(data.shape[1]):
# for j in range(data.shape[1]): # 1, 2; 0, 2; 0, 1
# if i == j:
# continue
# # column gives x axis, row gives y axis, thus need to reverse the selection for plotting goal
# # g.axes[i,j].plot(df["%s%d" % (self.cols_goal_base, j)], df["%s%d" % (self.cols_goal_base, i)], "ro", alpha=0.5)
# g.axes[i,j].plot(df["x_%d" % (j,)], df["x_%d" % (i,)], "ro", alpha=0.5)
plt.show()
# run sns scattermatrix on dataframe
# plot_scattermatrix(df, ax = None)
评论列表
文章目录