Ich habe eine Reihe von kartesischen Koordinatenpaaren, zusammen mit einer binären Variablen für jedes der Paare. Ich zeichne eine Heatmap, in der ich in jedem Bin den Anteil der Koordinaten errechne, die in dieses Bin fallen, wo die binäre Variable 1 ist.Ändern der Achse einer Seaborn Heatmap
Mein Problem ist mit der Achse. Wie in der folgenden Abbildung zu sehen ist, handelt es sich bei der resultierenden Achse um Zeichenfolgen, die für Fachgrenzen stehen. Ich möchte, dass die Achse kartesische Koordinaten ist. Gibt es eine einfache Möglichkeit, dies zu ändern?
import numpy as np
import pandas as pd
import seaborn as sb
np.random.seed(0)
x = np.random.uniform(0,100, size=200)
y = np.random.uniform(0,100, size=200)
z = np.random.choice([True, False], size=200, p=[0.3, 0.7])
df = pd.DataFrame({"x" : x, "y" : y, "z":z})
binsx = 8
binsy = 5
res = df.groupby([pd.cut(df.y, binsy),pd.cut(df.x,binsx)])['z'].mean().unstack()
ax = sb.heatmap(res)
ax.axis('equal')
ax.invert_yaxis()
In [diese Antwort] (http://stackoverflow.com/a/42947766/4124317) zu Ihrer letzten Frage, die Sie bereits kartesischen Koordinaten haben. Kannst du näher ins Detail gehen, wie das Endergebnis aussehen sollte? Willst du die Ticklabels einfach ändern? Oder die Achsenskalierung? – ImportanceOfBeingErnest
Danke, in der Tat ist es die gleiche Anwendung. Ich möchte die Achsenskalen ändern, nicht nur die Ticklabels. – splinter