gpt4 book ai didi

python - Pandas 3x3 散点矩阵缺少标签

转载 作者:太空狗 更新时间:2023-10-30 01:02:39 24 4
gpt4 key购买 nike

我使用以下代码创建了一个 pandas 散点矩阵:

import numpy as np
import pandas as pd

a = np.random.normal(1, 3, 100)
b = np.random.normal(3, 1, 100)
c = np.random.normal(2, 2, 100)

df = pd.DataFrame({'A':a,'B':b,'C':c})
pd.scatter_matrix(df, diagonal='kde')

这导致以下散点矩阵: enter image description here

第一行没有 ytick 标签,第三列没有 xtick 标签,第三项“C”没有标签。

知道如何用缺少的标签完成这个图吗?

最佳答案

访问有问题的子图并像这样更改其设置。

axes = pd.scatter_matrix(df, diagonal='kde')
ax = axes[2, 2] # your bottom-right subplot
ax.xaxis.set_visible(True)
draw()

您可以在下面的链接中查看 scatter_matrix 函数如何进行标记。如果您发现自己一遍又一遍地这样做,请考虑将代码复制到文件中并创建您自己的自定义 scatter_matrix 函数。

https://github.com/pydata/pandas/blob/master/pandas/tools/plotting.py#L160

编辑,回应被拒绝的评论:

这个明显的扩展,做 ax[0, 0].xaxis.set_visible(True) 等等,是行不通的。出于某种原因, scatter_matrix 似乎为 axes[2, 2] 设置了刻度和标签而不使它们可见,但它没有为其余部分设置刻度和标签。如果您决定有必要在其他子图中显示刻度和标签,则必须更深入地研究上面链接的代码。

具体来说,将 if 语句的条件更改为:

if i == 0
if i == n-1
if j == 0
if j == n-1

分别。我还没有对此进行测试,但我认为它可以解决问题。

关于python - Pandas 3x3 散点矩阵缺少标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14511752/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com