我正在尝试在散点图中绘制一系列IP地址,然后根据它们的“检测结果”标记它们,这些检测结果为0或大于0 0
虽然这个情节确实生成了,但它会将所有点颜色相同,而不是通过恶意标签将它们分开,任何帮助都非常感谢!
df = pd.io.sql.read_sql('SELECT Date_scanned, IP, Detections FROM URLs', con=conn)
df['Date_scanned']=df['Date_scanned'].str.split(" ").str[0]
detections = df['Detections'].values
for row in df:
for x in detections:
if x > 0:
malicious = "Yes"
else:
malicious = "No"
plt.scatter(df['Date_scanned'], df['IP'], label=malicious)
plt.legend(loc='best')
plt.show()
答案 0 :(得分:1)
你没有告诉#Unit: milliseconds
# expr min lq mean median uq max neval cld
# Peter Miksza 23.10125 24.27295 28.46968 26.52559 30.45729 143.0731 1000 a
# Moody_Mudskipper 22.82366 24.35622 28.33038 26.72574 30.27768 146.4284 1000 a
# catastrophic_failure 22.59413 24.04295 27.99147 26.23098 29.88066 120.6036 1000 a
这些点应该是什么样子,所以你不会为每个案例得到不同的结果。
您想要做的是在一次调用中绘制条件为“恶意”的所有点,并指定要使用哪种标记/颜色,然后第二次调用非恶意条件指定单独的标记。
这样的事情:
scatter()