ten kod:Błąd Seaborn? Niespójne w mapę cieplną wykreślania
%matplotlib inline
#import numpy as np; np.random.seed(0)
import matplotlib.pyplot as plt
import seaborn as sns #; sns.set()
flights = sns.load_dataset("flights")
flights = flights.pivot("month", "year", "passengers")
sns.heatmap(flights, annot=True, linewidths=.2, fmt="d")
#plt.show()
dostanie rezultat wygląda the official result (See/verify it here):
Jednakże, jeśli wyłączyć wykreślanie inline i włączyć plt.show()
wynik będzie wyglądać następująco:
Np., adnotacja zniknęła, z wyjątkiem sytuacji, gdy jedna komórka i orientacja etykiety y są nieprawidłowe, jeśli wbudowane drukowanie jest wyłączone. Ponieważ jest to jedyna zmiana, którą wprowadziłem, myślę, że jest to błąd z seaborn
, że nie może uzyskać spójnych wyników.
Czy ktoś może to potwierdzić, proszę?
Czy jest możliwa poprawka?
Update, dzięki Sergey dla jego opinie, tutaj są moje wersje wszystkiego istotne:
Python: 3.5.0 |Anaconda 2.4.0 (64-bit)| (default, Dec 1 2015, 11:46:22) [MSC v.1900 64 bit (AMD64)]
IPython: 4.0.0
Matplotlib: 1.5.0
Seaborn: 0.6.0
Więc myślę, że jest to albo Python3 lub matplotlib: 1.5, który jest przyczyną problemu. Na wszelki wypadek dodam tag Python3.
Dzięki
Thanks Pablo. Używam Windows7, a moim interaktywnym zapleczem jest 'QtAgg'. Niestety, podobnie jak w przypadku kyleabeauchamp, "TkAgg i QT4Agg mają takie samo zachowanie w pojedynczej komórce co OSX". Ja też nie mam szczęścia. – xpt
@xpt Tak, masz rację, że 'MacOSX' nie jest jedynym backendem, który produkuje ten błąd. Potwierdziłem to również dla 'QtAgg' i' TkAgg' na Linux. Jeśli jesteś zadowolony z zapisania do pliku PNG/PDF, działa funkcja "Agg". Niestety, nie znam innego interaktywnego backendu, z którego mógłbyś skorzystać, prawdopodobnie będziemy musieli poczekać, aż błąd seaborn/matplotlib zostanie rozwiązany. Zaktualizuję odpowiedź za pomocą tych informacji. –
Tak, to działa. ** Dzięki **, ponieważ 'use (" Agg ")' jest nieudokumentowane i nie mogę go znaleźć. Otrzymam +1 od tego i +1 i przyjmuję dalej, gdy błąd seaborn/matplotlib zostanie rozwiązany, a ty zaktualizujesz swoją odpowiedź. – xpt