Sad*_*dae 2 python matplotlib seaborn
而不是默认的“盒装”轴(和刻度线,标签......)样式,我只想拥有右侧和顶部轴,即:
这应该很容易,但我在文档中找不到必要的选项。
import seaborn as sns
penguins = sns.load_dataset("penguins")
g=sns.pairplot(penguins)
plt.show()
Run Code Online (Sandbox Code Playgroud)
这实际上不是一件容易的事,因为你需要处理很多由 seaborn 硬编码的东西(spines、ticks、labels)。
sns.set_style('ticks')
penguins = sns.load_dataset("penguins")
g=sns.pairplot(penguins)
for ax in g.axes.flat:
sns.despine(left=True, right=False, bottom=True, top=False, ax=ax)
ax.xaxis.set_ticks_position('top')
ax.yaxis.set_ticks_position('right')
plt.setp(ax.yaxis.get_ticklabels(), visible=ax.is_last_col())
plt.setp(ax.xaxis.get_ticklabels(), visible=ax.is_first_row())
for ax1,ax2 in g.axes[:,[0,-1]]:
ax2.yaxis.set_label_position('right')
ax2.set_ylabel(ax1.get_ylabel(), visible=True)
ax1.set_ylabel('')
for ax1,ax2 in g.axes[[0,-1],:].T:
ax1.xaxis.set_label_position('top')
ax1.set_xlabel(ax2.get_xlabel(), visible=True)
ax2.set_xlabel('')
plt.show()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
48 次 |
| 最近记录: |