我的大部分工作时间都花在终端上:我在那里运行文本编辑器,在那里运行程序等。我通常将 iTerm2 设置为显示许多狭窄的全高终端。然而,当我处理绘图时,我通常会这样做:
$ ./some-cmd.pyplot.png && 打开plot.png
这会弹出一个带有我的绘图的预览窗口,然后我将其关闭并返回到我的编码。不过,我真正想要的是直接在我的终端中。这是可能的!
iTerm2 终端支持内联图像协议, itermplot提供了使用该协议的 matplotlib 后端。这意味着更新我的.bashrc
后:
导出 MPLBACKEND="模块://itermplot" 导出 ITERMPLOT="rv"
我可以写:
./内联图.py: #!/usr/bin/env python3 将 matplotlib.pyplot 导入为 plt Fig, ax = plt.subplots() ax.plot([0,1], [1,0]) plt.title("一张图") plt.xlabel("x 轴") plt.ylabel("y 轴") plt.show()
当我将其作为./inline-plot.py
运行时,我看到:
当然,我通常会将它与许多其他具有相关工作的终端一起使用:
当显示复杂的图表时,我确实注意到它会稍微减慢该终端的速度,但它不会影响其他终端,并且当我清除它时它会恢复全速。
我才刚刚开始使用它,但我对此感到非常兴奋!它非常适合我的工作流程。