Colorear diagramas de dispersión por valores de columna en Python
La versatilidad de ggplot2 en R permite una asignación perfecta de colores a puntos de datos según la columna valores. Esta característica también se puede replicar en Python usando pandas dataframes y Matplotlib.
Usando Pandas y Matplotlib
Para asignar colores a valores en Matplotlib, considere los siguientes pasos:
Aquí hay un ejemplo de implementación:
def dfScatter(df, xcol='Height', ycol='Weight', catcol='Gender'):
fig, ax = plt.subplots()
categories = np.unique(df[catcol])
colors = np.linspace(0, 1, len(categories))
colordict = dict(zip(categories, colors))
df["Color"] = df[catcol].apply(lambda x: colordict[x])
ax.scatter(df[xcol], df[ycol], c=df.Color)
return fig
Ejemplo de uso
Considere un marco de datos con columnas Altura, Peso y Género. Para crear un diagrama de dispersión donde los colores se asignan según la columna Género:
df = pd.DataFrame({'Height':np.random.normal(size=10),
'Weight':np.random.normal(size=10),
'Gender': ["Male","Male","Unknown","Male","Male",
"Female","Did not respond","Unknown","Female","Female"]})
fig = dfScatter(df)
Esto generará un diagrama de dispersión donde la columna Género determina el color de cada punto de datos.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3