2017-08-30 116 views
0

我正在分析Iris dataset并在花瓣宽度和花瓣长度之间做了散点图。为了使情节我用这个代码:seaborn regplot删除数据点的颜色

# First, we'll import pandas, a data processing and CSV file I/O library 
import pandas as pd 
# We'll also import seaborn, a Python graphing library 
import warnings # current version of seaborn generates a bunch of warnings that we'll ignore 
warnings.filterwarnings("ignore") 
import seaborn as sns 
import matplotlib.pyplot as plt 
import numpy 
sns.set(style="dark", color_codes=True) 

# Next, we'll load the Iris flower dataset, which is in the "../input/" directory 
iris = pd.read_csv("Iris.csv") # the iris dataset is now a Pandas DataFrame 

# Let's see what's in the iris data - Jupyter notebooks print the result of the last thing you do 
print(iris.head(10)) 

# Press shift+enter to execute this cell 
sns.FacetGrid(iris, hue="Species", size=10) \ 
    .map(plt.scatter, "PetalLengthCm", "PetalWidthCm") \ 
    .add_legend() 

enter image description here

后来我绘制的回归线,但绘制这条线后,颜色不清晰可见。我试图改变回归线的颜色,但这没有帮助。我怎样才能绘制回归线而不失去不同物种的颜色?

,使包括回归线情节的代码是:

sns.FacetGrid(iris, hue="Species", size=10) \ 
    .map(plt.scatter, "PetalLengthCm", "PetalWidthCm") \ 
    .add_legend() 
sns.regplot(x="PetalLengthCm", y="PetalWidthCm", data=iris) 

petal_length_array = iris["PetalLengthCm"] 
petal_width_array = iris["PetalWidthCm"] 

r_petal = numpy.corrcoef(petal_length_array, petal_width_array) # bereken de correlatie 

print ("Correlation is : " + str(r_petal[0][1])) 

enter image description here

回答

2

您的问题是sns.regplot()绘制所有点相同的颜色,在积分榜首的不同颜色。

要避免这种情况,请尝试拨打regplot(..., scatter=False)以防止绘制单个数据点。 Check the documentation for regplot.