[ad_1]
Hola a todos,
Soy un poco nuevo en la conspiración marítima y cuando uso el siguiente código, las figuras se ven un poco raras y supongo que no son exactamente lo que deben ser. ¿Puedes guiarme donde me falta?
Lo que he probado:
import pandas as pd import numpy as np import matplotlib.pyplot as plt import seaborn as sns import plotly as px Titanic=sns.load_dataset("titanic") sns.countplot(x='age', data=Titanic) # x-ticks are overlapping sns.violinplot(data=Titanic, x="age", y="fare", hue="class") # same problem sns.pairplot(Titanic) # give and error sns.boxenplot(data=Titanic,x="age", y="fare", hue="class") # graph is too bad as well as same error as previous. sns.violinplot(data=Titanic, x="age", y="fare", hue="class") # graph is too bad as well as same error as previous. sns.countplot(x='age', data=Titanic) # x-ticks are overlapping
Solución 1
Necesitas ayuda con tus tramas de Seaborn. Abordémoslos uno por uno:
1. Superposición de ticks x en `sns.countplot`: Esto suele ocurrir cuando hay demasiados valores únicos en la columna “edad”. Para que el gráfico sea más legible, puede aumentar el tamaño de la figura o rotar las etiquetas de marca x.
2. Problemas con `sns.violinplot`, `sns.boxenplot` y `sns.pairplot`: Estos problemas pueden surgir debido a la naturaleza de los datos en las columnas “edad” y “tarifa”. La columna “edad” puede tener valores NaN o el rango de “tarifa” puede ser demasiado amplio, lo que provoca gráficos sesgados.
3. Error con `sns.pairplot`: Este error podría deberse a valores no numéricos o NaN en el conjunto de datos. `sns.pairplot` solo funciona con columnas numéricas y no puede manejar bien los valores NaN.
A continuación se muestran algunos ajustes de código y sugerencias para resolver estos problemas:
Ajustando el gráfico de conteo
plt.figure(figsize=(10, 6)) # Adjusting figure size sns.countplot(x='age', data=Titanic) plt.xticks(rotation=90) # Rotating x-ticks plt.show()
Manejo de diagramas de caja y violín
Para `sns.violinplot` y `sns.boxenplot`, asegúrese de que las columnas ‘age’ y ‘fare’ no tengan valores NaN ni valores atípicos que puedan distorsionar la trama. Puede manejar los valores de NaN eliminándolos o rellenándolos con una medida de tendencia central (media, mediana).
# Handling NaN values Titanic = Titanic.dropna(subset=['age', 'fare']) # Now try plotting sns.violinplot(data=Titanic, x="age", y="fare", hue="class") plt.show() sns.boxenplot(data=Titanic, x="age", y="fare", hue="class") plt.show()
Arreglando el diagrama de pares
Para corregir `sns.pairplot`, asegúrese de que todas las columnas sean numéricas y manejen valores NaN.
# Dropping non-numeric columns for pairplot numeric_cols = Titanic.select_dtypes(include=[np.number]).columns.tolist() Titanic_numeric = Titanic[numeric_cols].dropna() sns.pairplot(Titanic_numeric) plt.show()
¿Podrías probar estos ajustes y ver si resuelven los problemas con tus gráficos? Si aún tiene problemas, los mensajes de error específicos podrían brindarle más información sobre lo que podría estar fallando.
[ad_2]
コメント