如何将 x 和 y 轴上的值更改为 seaborn pairplot 中的单词?

How to change values on x and y-axis to words in seaborn pairplot?

我想将 seaborn 散点图中 X 轴和 Y 轴上的值更改为文字。 下面是我用值绘制散点图的代码。在此之前,我将 pandas Data Frame 中的所有用户输入(单词)替换为浮点类型,因为它不会用字母绘制绘图,但现在我需要将 X 和 Y 轴值更改为单词。

sns.pairplot(data=db, y_vars=['Dayanswer'], x_vars=['Season','Day'])

Here is the scatter plot with values on X and Y-axis 我想改变 Y 轴:'1.0' 到好,'0.5' 到 'Normal' 和 '0.0' 到 'Bad',以及 X 轴:季节'2.0'到 'Spring','3.0' 到 'Summer',在 Day 中:'1' 到 'Monday','2' 到 'Tuesday' 等等 to get something like this 。我该怎么做?

使用 matplotlib 库中的 set_xticksset_xticklabels 等来实现您的目的:

import seaborn as sns
import matplotlib.pylab as plt

iris = sns.load_dataset("iris")
pp = sns.pairplot(data=iris, x_vars=['sepal_length', 'sepal_width'],  y_vars=['petal_width'])

# set y labels
for ax in pp.axes.flat: # iterate over all axes object of pairplot
    ax.set_yticks([1.,.5,.0])
    ax.set_yticklabels(['Good','Normal','Bad'])

# set x labels
# 1st plot
pp.axes[0,0].set_xticks([0,1,2,3])
pp.axes[0,0].set_xticklabels(['Winter','Spring','Summer','Autumn'])

# 2nd plot
pp.axes[0,1].set_xticks([0,1,2,3,4,5,6,7])
pp.axes[0,1].set_xticklabels(['Mon','Tue','Wen','Thu','Fri','Sut','Sun'])

plt.show()