结合一系列熊猫

时间:2020-02-26 04:53:35

标签: python pandas

我在excel中有一个数据,其中一个变量是temp(范围从-3到3),另一个是wind_speed

对于我的猫图,如何设置x轴的范围(温度)

g = sns.catplot(x="temp", y="wind_speed", data=ieq_data, kind="bar")

当我输入此代码时,x轴显示-3,-2,-1、0、1、2、3

我想将其组合成(-3,-2),(-1),(0),(1),(2,3)

编辑:

def temp(x):
    if -3 <= x < -2:
        return "(-3,-2)"
    elif -2 <= x < 0:
        return "(-1)"
    elif 0 <= x < 2:
        return "(1)"
    elif 2 <= x <= 3:
        return "(2,3)"
ieq_data["new_Thermal"] = ieq_data.temp.apply(temp)
g = sns.catplot (x="new_Thermal", y="wind_speed", data=ieq_data, kind="bar")

2 个答案:

答案 0 :(得分:0)

您可以使用任意列表显式替换刻度线。

g.set(xticks=my_ticks_list)

答案 1 :(得分:0)

可以像下面一样创建一个额外的列,并将该列用作x。 您将不得不重新访问该函数中的分类。这是根据我对您问题的理解。

def grouping_func(val):
    if -3 <= val < -2:
        return "(-3, -2)"
    elif -2 <= val < 0:
        return "(-1)"
    elif 0 <= val < 2:
        return "(1)"
    elif 2 <= val <=3:
        return "(2, 3)"
ieq_data["new_col"] = ieq_data.temp.apply(grouping_func)
g = sns.catplot(x="new_col", y="wind_speed", data=ieq_data, kind="bar")