如何使用 gcf() 或 gca() 自定义 matplotlib 绘图?

Qua*_*iat 6 customization plot matplotlib deep-learning shap

我正在使用一个名为的包shap,它具有集成的绘图功能。不过我想调整一些东西,比如标签、图例、颜色、大小等。

显然是由于开发人员可以通过使用 plt.gcf() 实现这一点。

我这样称呼该图,这将给出一个图形对象,但我不确定如何使用它:

fig = shap.summary_plot(shap_values_DT, data_train,color=plt.get_cmap("tab10"), show=False)
ax = plt.subplot()
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

更新/解决方案 最后,我通过执行以下操作将所有内容调整为我想要的:

shap.summary_plot(shap_values_DT, data_train, color=plt.get_cmap("tab10"), show=False)
fig = plt.gcf()
fig.set_figheight(12)
fig.set_figwidth(14)
ax = plt.gca()
ax.set_xlabel(r'durchschnittliche SHAP Werte $\vert\sigma_{ij}\vert$', fontsize=16)
ax.set_ylabel('Inputparameter', fontsize=16)
ylabels = string_latexer([tick.get_text() for tick in ax.get_yticklabels()])
ax.set_yticklabels(ylabels)
leg = ax.legend()
for l in leg.get_texts(): l.set_text(l.get_text().replace('Class', 'Klasse'))
plt.show()
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

Qua*_*iat 10

最后,我通过执行以下操作将所有内容调整为我想要的:

shap.summary_plot(shap_values_DT, data_train, color=plt.get_cmap("tab10"), show=False)
fig = plt.gcf()
fig.set_figheight(12)
fig.set_figwidth(14)
ax = plt.gca()
ax.set_xlabel(r'durchschnittliche SHAP Werte $\vert\sigma_{ij}\vert$', fontsize=16)
ax.set_ylabel('Inputparameter', fontsize=16)
ylabels = string_latexer([tick.get_text() for tick in ax.get_yticklabels()])
ax.set_yticklabels(ylabels)
leg = ax.legend()
for l in leg.get_texts(): l.set_text(l.get_text().replace('Class', 'Klasse'))
plt.show()
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述