Динамически установить размер метки на графике Python Squarify? - PullRequest
0 голосов
/ 21 июня 2019

Я строю древовидную карту для анализа данных с несколькими различными параметрами.Когда ящики уменьшаются, размер текста смешивается и становится трудночитаемым.

Я использую библиотеку Squarify с matplotlib.

def plot_treemap(df, std):
    title = "Parameter Defect Count - Std +- {0}".format(std)
    std_count = "Def_Count_Std_{0}".format(std)
    norm = matplotlib.colors.Normalize(vmin=df[[std_count]].min(),vmax=df[[std_count]].max())
    colors = [matplotlib.cm.Reds(norm(value)) for value in df["Def_Count_Std_{0}".format(std)]]

    fig = plt.gcf()
    fig.set_size_inches(20, 10)

    squarify.plot(label=df.index.str.replace('_', '\n'), sizes=df["Def_Count_Std_{0}".format(std)], color = colors, alpha=.6)
    plt.title(title, fontsize=30, fontweight="bold")

    plt.rc('font', size=20)
    plt.axis('off')

    return plt

plt = plot_treemap(df_std_1, 1)
plt.show()
...