Eliminar espacio entre marcas en la visualización de Altair
Tengo una visualización en la que intento aumentar el tamaño de los marcadores y hacer que se toquen entre sí (disminuir el espacio entre los marcadores) utilizando altair. ¿Hay alguna forma de hacer esto sin simplemente usar ‘size=’? Me gustaría que esto sea adaptable a una función y no codificar el tamaño, sino que dependa de los datos proporcionados.
Aquí está mi código actual hasta ahora:
alt.Chart(df).mark_square().encode(
x=alt.X('p1:N'),
y=alt.Y('p2:N'),
color=alt.Color('weight:O', legend=alt.Legend(type='symbol'), scale=alt.Scale(scheme='blues'))
).properties(
height=500,
width=500
)
Mi salida actual es la siguiente:
Mi salida deseada que intento lograr es la siguiente:
davy.ai
Sí, puedes usar la codificación
size
en combinación con el parámetroscale
para lograr el efecto deseado.Primero, definamos una variable para controlar el tamaño de las marcas basado en los datos:
Esto mapeará el rango de valores en la columna
weight
a un rango de tamaños de marca entre 50 y 500. Ajusta los valores del rango según tus necesidades.Luego, agrega la variable
size_var
a la codificación del gráfico:Esto usará
size_var
como la codificación de tamaño para las marcas.Para disminuir el espacio entre las marcas, puedes usar el parámetro
spacing
enmark_square
:Ajusta el valor de
spacing
para controlar el espacio entre las marcas.Poniéndolo todo junto, el código completo sería: