理解Pandas散射矩阵图中的对角线

Jac*_*ain 20 python pandas

我正在绘制散点图Pandas.我可以理解该情节,除了对角线图中的曲线.有人可以向我解释他们的意思吗?

图片:

在此输入图像描述

码:

import pylab
import numpy as np
from pandas.tools.plotting import scatter_matrix
import pandas as pd

def make_scatter_plot(X, name):    
    """
    Make scatterplot.

    Parameters:
    -----------
    X:a design matrix where each column is a feature and each row is an observation.
    name: the name of the plot.
    """
    pylab.clf()
    df = pd.DataFrame(X)
    axs = scatter_matrix(df, alpha=0.2, diagonal='kde')

    for ax in axs[:,0]: # the left boundary
        ax.grid('off', axis='both')
        ax.set_yticks([0, .5])

    for ax in axs[-1,:]: # the lower boundary
        ax.grid('off', axis='both')
        ax.set_xticks([0, .5])

    pylab.savefig(name + ".png")
Run Code Online (Sandbox Code Playgroud)

Wil*_*uck 25

如您所知,散点矩阵正在绘制针对每个其他列指定的每个列.

但是,在这种格式中,当你到达对角线时,你会看到一个列对着自己的图.由于这总是一条直线,Pandas决定它可以为您提供更多有用的信息,并绘制该列数据的密度图.

请参见http://pandas.pydata.org/pandas-docs/stable/visualization.html#density-plot.

如果您想要直方图,可以将绘图代码更改为:

axs = scatter_matrix(df, alpha=0.2, diagonal='hist')
Run Code Online (Sandbox Code Playgroud)


小智 5

除了默认的“线图”外,绘图方法还允许使用多种绘图样式。这些方法可以作为plot()的kind关键字参数提供。这些包括:

  • 条形图的“ bar”或“ barh”
  • 直方图的“ hist”
  • 箱线图的“框”
  • 密度图的'kde'或'density'
  • 区域图的“区域”
  • 散点图的“散点图”
  • 'hexbin'用于六角图
  • 饼图的“派”

https://pandas.pydata.org/pandas-docs/stable/visualization.html