Seite 1 von 1

scatter_matrix Fehler durch 'c'

Verfasst: Dienstag 16. Juli 2019, 10:13
von Hias_L
Hallo zusammen,

Python ist neu für mich. Vermutlich ist meine Frage eine Kleinigkeit für Euch.

Folgender Code:

grr_2018 = pd.plotting.scatter_matrix(dataSet_2018[cols_target_2018 + cols_ratio_2018]
,c = dataSet_target_2018 #c=solors für color?
,diagonal = 'kde' #ansonsten Standard = Histogram
,figsize=(20, 20) #Quadratgröße
,marker = 'o'
,hist_kwds={'bins' : 20}# Balkenbreite
,s = 60 #s=sizes
,alpha = 0.8)
plt.show()

verursacht folgenden Fehler: ValueError: 'c' argument must either be valid as mpl color(s) or as numbers to be mapped to colors. Here c = rel. Op. Ergebnis

Wenn ich c auskommentiere klappt es.

Vielen Dank und Gruß
Hias

Re: scatter_matrix Fehler durch 'c'

Verfasst: Dienstag 16. Juli 2019, 10:17
von __deets__
Bitte code-tags verwenden, damit man den Code lesen kann. Im Vollstaendigen Editor den </>-Knopf benutzen.

Re: scatter_matrix Fehler durch 'c'

Verfasst: Dienstag 16. Juli 2019, 10:31
von Hias_L
Ok, klar. Sorry habe es vergessen.

Code: Alles auswählen

grr_2018 = pd.plotting.scatter_matrix(dataSet_2018[cols_target_2018 + cols_ratio_2018]
                                 ,c = dataSet_target_2018 
                                 ,diagonal = 'kde' 
                                 ,figsize=(20, 20) 
                                 ,marker = 'o'
                                 ,hist_kwds={'bins' : 20}
                                 ,s = 60
                                 ,alpha = 0.8)
plt.show()][/code

Re: scatter_matrix Fehler durch 'c'

Verfasst: Dienstag 16. Juli 2019, 10:34
von Sirius3
Was ist denn `dataSet_target_2018` und woher kommt es? Es ist offensichtlich nichts, was matploblib als Farbe interpretieren kann.

Re: scatter_matrix Fehler durch 'c'

Verfasst: Dienstag 16. Juli 2019, 11:10
von Hias_L
`dataSet_target_2018` ist ein DataFrame mit der Größe (73,1) mit Werten wie z.B. 0.166049, 0.0746339, 0, -0.002679, ...

Das DataSet_2018 besteht nur aus Werten wie oben gezeigt.

Ich wollte folgendes Beispiel mit eigenen Werten nachvollziehen: https://data-science-blog.com/blog/2017 ... kit-learn/
Wenn ich das richtig verstehe, sollte über 'c' die Färbung verändert werden: Umso höher der dataSet_target_2018 Wert, umso heller die Färbung.

Abgesehen von der Färbung klappt es.

Re: scatter_matrix Fehler durch 'c'

Verfasst: Dienstag 16. Juli 2019, 12:08
von __deets__
Ich weiss nicht was der Typ (der sich die wirklich uebelste Formatierung mit den fuehrenden Kommata ever ausgedacht hat) fuer daten hat, aber laut Dokumentation https://matplotlib.org/3.1.1/api/_as_ge ... atter.html ist fuer reellwertige Daten wie deine ein cmap und norm-Argument von Noeten.

Re: scatter_matrix Fehler durch 'c'

Verfasst: Dienstag 16. Juli 2019, 12:47
von ThomasL
Keine Ahnung ob das so mal funktioniert hat, aber der Dataframe kann so nicht mehr als Farbscala übergeben werden.
Einfach konvertieren und dann klappt es.

Code: Alles auswählen

c = dataSet_target.values.reshape(199,)

Re: scatter_matrix Fehler durch 'c'

Verfasst: Dienstag 16. Juli 2019, 15:20
von Hias_L
Vielen Dank für die Hilfe klappt jetzt einwandfrei!

Schönen Tag und Gruß
Hias