2014-10-14 23 views
12

Tôi đang vẽ đồ thị phân tán bằng Pandas. Tôi có thể hiểu cốt truyện, ngoại trừ các đường cong trong các ô đường chéo. Ai đó có thể giải thích cho tôi ý của họ?Hiểu đường chéo trong ô ma trận phân tán của Pandas

Ảnh:

enter image description here

Code:

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") 
+0

kinda Offtopic và sẽ làm ví dụ ít tập trung, nhưng những lô cầu xin cho thang log-log (ví dụ điển hình do tại sao: http://blogs.sas.com /content/iml/2014/07/09/scatter-plots-with-log-axes.html) –

Trả lời

19

Như bạn có thể nói, ma trận tán xạ là âm mưu từng cột quy định đối với mỗi cột khác.

Tuy nhiên, ở định dạng này, khi bạn đi đến một đường chéo, bạn sẽ thấy một âm mưu của một cột chống lại chính nó. Vì đây sẽ luôn là một đường thẳng, Pandas quyết định nó có thể cung cấp cho bạn thông tin hữu ích hơn và vẽ cốt truyện mật độ của cột dữ liệu đó.

Xem http://pandas.pydata.org/pandas-docs/stable/visualization.html#density-plot.

Nếu bạn muốn có một biểu đồ, bạn có thể thay đổi mã âm mưu của bạn để:

axs = scatter_matrix(df, alpha=0.2, diagonal='hist') 
+0

cảm ơn! các tùy chọn khác ngoại trừ 'kde' hoặc 'hist' là gì? – Qwerty

2

phương pháp Vẽ cho phép một số ít các phong cách âm mưu khác hơn so với cốt truyện Dòng mặc định. Các phương thức này có thể được cung cấp dưới dạng đối số từ khóa loại cho lô(). Chúng bao gồm:

  • 'bar' hoặc 'Barh' cho lô thanh
  • 'hist' cho histogram
  • 'chiếc hộp' cho boxplot
  • 'kde' hoặc 'mật' cho âm mưu mật độ
  • 'khu vực' cho lô diện tích
  • 'tán' cho điểm phân tán
  • 'hexbin' cho lô bin lục giác
  • 'bánh' cho lô bánh

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

Các vấn đề liên quan