我创建了ROC图。但它与正常的不同。
通常的ROC图表:
我的ROC图:
#!/usr/bin/env python
import matplotlib.pyplot as plt
# Import the data from output file
#from output import *
from output1 import *
plt.figure('All Profile')
plt.title('Receiver Operating Characteristic (ROC)')
plt.ylim(ymax = 1.0000, ymin = 0.0000)
plt.xlim(xmax = 1.0000, xmin = 0.0000)
plt.ylabel('True Positive Rate (TPR)')
plt.xlabel('False Positive Rate (FPR)')
plt.grid(True)
# The diagonal line
x = [0.0, 1.0]
plt.plot(x, x, linestyle='dashed', color='red', linewidth=2, label='random')
# FPRlist and TPRlist the variable that save the data in output file
plt.plot(FPRlist, TPRlist, linewidth=2, marker='o', color='b')
plt.show()
这是我保存在output1.py
中的数据TPRlist=['0.995', '0.989', '0.972', '0.799', '0.317', '0.198', '0.071', '0.000', '0.000', '0.000', '0.000', '0.000', '0.000', '0.000', '0.000']
FPRlist=['0.487', '0.475', '0.465', '0.292', '0.143', '0.085', '0.001', '0.000', '0.000', '0.000', '0.000', '0.000', '0.000', '0.000', '0.000']
那我该怎么办?是不是因为我的数据我得到了这样的图?
答案 0 :(得分:0)
如果您的意思是ROC的某些部分恰好与轴限制一致,您可以在plt.show()
之前写一下:
plt.ylim(-0.005, 1.005)
plt.xlim(-0.005, 1.005)
答案 1 :(得分:0)
ROC的输入数据通常包含两个非常天真的操作点: