用pylab绘制黑白曲线

2024-06-11 21:53:09 发布

您现在位置:Python中文网/ 问答频道 /正文

我用pylab画了一些彩色ROC曲线。为此,我将以下命令放在For循环中:

pl.plot(fprList [i], tprList[i],  color = colors[colorIndex],  label= str (fileNames [i].split('.')[0])+' (area = %0.2f)' % roc_aucList[i])

(pylab作为pl导入) 现在,问题是上面的代码行生成彩色曲线,而我需要它们是黑白的,并且由于我在同一个绘图上绘制了多条曲线,每条曲线应该有一个唯一的虚线模式。在上面的代码行中,如果去掉color参数,它仍然会生成彩色曲线。谁能告诉我,我怎样才能解决我的问题?我想补充一点,如果曲线是彩色的,但有不同的虚线图案,这样在黑白打印输出上,它们就会被清楚地区分开来,那就好了。你知道吗

先谢谢你。你知道吗


Tags: 代码命令forplot曲线color彩色pl
2条回答

你可以试试这个:

figure = pl.figure()
ax = figure.add_subplot(111)
ax.set_color_cycle(['#ffffff', '#000000'])

# your for loop
ax.plot(fprList [i], tprList[i], label= str (fileNames [i].split('.')[0])+' (area = %0.2f)' % roc_aucList[i])

Matplotlib(pylab使用的是Matplotlib)将自动以各种颜色打印,但是如果您想使它们全部为黑色,只需将color=colors[colorIndex]替换为color='k'。你知道吗

为了使它们成为不同的线型,你可以做一个列表,就像你对颜色所做的那样

linelist = ['-', ' ', '-.']

# in the loop
ax.plot(fprList [i], tprList[i], color='k', linestyle=linelist[i])

当然,还有你的其他关键词。matplotlib文档将提供一套完整的如何指定唯一线型的方法。你知道吗

相关问题 更多 >