如何在Python中基于散点图颜色绘制等高线图?

如何在Python中基于散点图颜色绘制等高线图?,python,plot,plotly,scatter,Python,Plot,Plotly,Scatter,我有一些像这样的传感器数据。我使用隔离林算法计算了ch2o柱的异常点。我已经根据异常与否在散点图中显示了数据(异常颜色代码为红色,正常数据为蓝色)。 我已经用如下方式绘制了散点图: fig_outliers = go.Figure( data=go.Scatter(x=dates, y=df['ch2o'], mode='markers', marker=dict(color=np.where(df['anomaly'] =

我有一些像这样的传感器数据。我使用隔离林算法计算了ch2o柱的异常点。我已经根据异常与否在散点图中显示了数据(异常颜色代码为红色,正常数据为蓝色)。 我已经用如下方式绘制了散点图:

    fig_outliers = go.Figure(
        data=go.Scatter(x=dates, y=df['ch2o'], mode='markers',
                        marker=dict(color=np.where(df['anomaly'] == 1, 'red', 'blue'))))

现在我想画出蓝色散射点的轮廓,把它们和红色散射点分开。如何在Python中实现这一点?类似这样的内容:

签出

    fig_outliers = go.Figure(
        data=go.Scatter(x=dates, y=df['ch2o'], mode='markers',
                        marker=dict(color=np.where(df['anomaly'] == 1, 'red', 'blue'))))


我想这就是您想要的

,但我如何将其应用于散点图值?只需查看文档即可。十、 Y是放置点的坐标,Z是它们的值我理解,但X是日期值,Y是传感器值。我不知道给什么赋值。x=df['time']和y=df['ch2o'].z=np.where(df['normal']==1,'red','blue')?否,因为这会导致z为红色或蓝色,并出现以下错误:ValueError:无法将字符串转换为float:'blue'