2017-07-20 5 views
0

Ich habe zwei Dichte Plot, übereinander. Wie kann ich den Bereich unter den Kurven mit 2 verschiedenen Farben füllen und auch etwas Transparenz hinzufügen, damit der überlappende Bereich auffällt.Fülldichte Plots mit Farbe in Python

import numpy as np 
import pandas as pd 
import matplotlib.pyplot as plt 
import sys 
import seaborn as sns 

x=[1,1,1,1,1,1,1,0,0,0,0,0,0,0] 
y=[1,1,1,0,2,0,0,0,1,1,0,1,0,1] 
sns.distplot(x, hist=False,color="green") 
sns.distplot(y, hist=False,color="blue") 

enter image description here

Antwort

3

Haben Sie sns.kdeplot(x, hist=False, color="green", shade=True) versucht? Anscheinend erzeugen sie die gleiche Kurve.

Von dem, was ich sagen kann, ist es standardmäßig transparent, die Ihre Anforderungen erfüllen sollte.

import matplotlib.pyplot as plt 
import seaborn as sns 

x=[1,1,1,1,1,1,1,0,0,0,0,0,0,0] 
y=[1,1,1,0,2,0,0,0,1,1,0,1,0,1] 
sns.kdeplot(x, color="green", shade=True) 
sns.kdeplot(y, color="blue", shade=True) 
plt.show() 

seaborn documentation

Hier ist der resultierende Graph:

Graph result

+1

es in keinen Schatten Parameter distplot ist –

+0

„_We sehen, dass, wenn wir die kdeplot() Funktion in Seaborn verwenden, Wir erhalten die gleiche Kurve. Diese Funktion wird von distplot() verwendet, bietet aber eine direktere Schnittstelle mit einem einfacheren Zugriff auf andere Optionen, wenn Sie nur die Dichte schätzen wollen: _ "- Von der obigen Dokumentation zu Seaborn. Verwenden Sie 'kdeplot()', um zu sehen, ob Sie die gleiche Kurve erhalten. – Eqomatic

+0

können Sie bitte den Code teilen? –