Мозаичный сюжет statsmodels с пустыми значениями
Я хотел бы создать мозаичный сюжет с statsmodels.graphics.mosaicplot.mosaic()
с данными, которые бросают пустые ячейки. Они выглядят безобразно на получающемся графике, потому что ячейка создается независимо от ее размера.
Пример:
import matplotlib.pyplot as plt
import pandas as pd
from statsmodels.graphics.mosaicplot import mosaic
df = pd.DataFrame({'size' : ['small', 'large', 'large'],
'length' : ['long', 'short', 'long']})
print(df) # note that the 'short'-'small' combination is missing
fig = plt.figure()
ax = fig.add_subplot(111)
mosaic(df, ax=ax)
Создает график с пустой ячейкой для значения "short small":
Есть ли способ избежать создания этой ячейки или впоследствии удалить ее из графика?
1 ответ
Отправьте анонимную функцию, чтобы исключить метки со значениями 0:
labels = lambda k: "\n".join(k) if df[k] != 0 else ""
mosaic(df, ax=ax, labelizer=labels)