【发布时间】:2026-02-05 17:40:01
【问题描述】:
我需要在一个窗口中绘制许多这样的行(对于 a0 .. a128)。我已经在FacetGrid、PairGrid 和各处进行了搜索,但找不到。只有regplot 有类似的论点ax,但它不绘制直方图。我的数据是 128 个带有标签列 [0, 1] 的实值特征。我需要将我的 Python 代码中的图表作为 Linux 上的单独应用程序显示。
另外,有没有办法缩放这个直方图以显示 Y 上的相对值,这样右曲线就不会倾斜?
g = sns.FacetGrid(df, col="Result")
g.map(plt.hist, "a0", bins=20)
plt.show()
【问题讨论】:
-
有点不清楚你的环境和数据是什么样子的。使用 matplotlib 的子图很容易。 FacetGrid 可能会起作用,具体取决于您的数据框。关于您的规范化:matplotlib.hist 采用
density=True,您也应该可以将其发布到 seaborn。 -
更新了答案。你有一个例子如何使用一些 FacetGrid 的子图吗?我没有通过 subplot 的轴。
-
据我所知,FacetGrid 应该替换 subplot(整个 subplot-thingy)。 编辑: 啊,你想要 FacetGrids 的子图……哎呀……查看文档。我认为 FacetGrid 是一个图形对象(不是轴对象!),你会遇到问题。
-
我只想要最短的解决方案,我认为可以使用 seaborn 完成。到目前为止,看起来它将是 numpy.histogram() 然后从任何库中手动绘制。
-
不需要使用 np.hist。只需用 plt.subplots 或任何其他函数构建一个网格,然后用 plt.hist 填充它们。我想如果您的数据框设置正确,FacetGrid 也可以这样做。但是关于你的任务的信息并不多。
标签: matplotlib seaborn