借助以下代码,我正在绘制图形;但是,这些值不清晰可见;它们与图形混合在一起:
for x111,y1 in zip(x1,loss_list):
plt.text(x111, y1, '%.2f' % y1, ha='right', va= 'bottom', color='blue')
for x112,y2 in zip(x1,val_loss_list):
plt.text(x112, y2, '%.2f' % y2, ha='left', va= 'top', color='orange')
plt.plot(xc,train_loss_history)
plt.plot(xc,val_loss_history)
plt.xlabel('num of Epochs')
plt.ylabel('loss')
plt.title('train_loss vs val_loss')
#plt.grid(True)
plt.legend(['train','val'])
plt.show()
如何使可视化更具可读性?
答案 0 :(得分:2)
您可以更改文本的颜色和大小:size='x-small'
for x111,y1 in zip(x1,loss_list):
plt.text(x111, y1, '%.2f' % y1,color='black',horizontalalignment='center',verticalalignment='bottom')
for x112,y2 in zip(x1,val_loss_list):
plt.text(x112, y2, '%.2f' % y2,color='black',horizontalalignment='center',verticalalignment='bottom')
答案 1 :(得分:1)
您也许可以调整所用颜色的Alpha值(透明胶片)?
也许是这样吗?
for x111,y1 in zip(x1, loss_list):
plt.text(x111, y1, '%.2f' % y1, ha='right', va='bottom', color='blue')
for x112,y2 in zip(x1, val_loss_list):
plt.text(x112, y2, '%.2f' % y2, ha='left', va='top', color='black') # changed to black, but you can try some other color to see if you like it better
plt.plot(xc, train_loss_history, color='blue', alpha=0.5)
plt.plot(xc, val_loss_history, color='orange', alpha=0.5)
plt.xlabel('num of Epochs')
plt.ylabel('loss')
plt.title('train_loss vs val_loss')
#plt.grid(True)
plt.legend(['train', 'val'])
plt.show()
您没有提供数据,因此很难调整值以最大化可读性。
答案 2 :(得分:1)
我最近遇到了同样的问题。我的解决方案不是很好,但是可以解决
希望有人也可以为您提供更好的动态解决方案,但这至少可以暂时解决您的问题。
解决方案是简单地向每个点添加y偏移。例如
values()
如果您需要动态执行此操作,则一种方法可能是查看与绘图位置“接近”的y值,然后选择合适的内容。例如。具有适当窗口大小的y值的简单“最大池”。