如何在不使用Jupyter Notebook的情况下使用SchemDraw绘制原理图?

How to draw a schematic using SchemDraw without using Jupyter Notebook?

下面的代码示例 运行s 没有错误,但屏幕上没有显示任何内容。

这是我尝试使用的代码示例...

import SchemDraw
import SchemDraw.elements as elm

d = SchemDraw.Drawing()
R1 = d.add(elm.Resistor(label='1K$\Omega$'))
d.labelI(R1, '1 mA', top=False)
d.add(elm.Capacitor(d='down', botlabel='0.1$\mu$F'))
d.add(elm.Line( d='Left'))
d.add(elm.Ground)
d.add(elm.SourceV( d='up', label='10V') )
d.save('schematic.svg')
d.draw()

我在 Windows 7 平台上,我的命令提示符中集成了 Python 3.7。如果我导航到 schematic.py 文件所在的目录并将其添加到控制台中:

Python schematic.py

它 运行 很好并以 0 错误退出,但屏幕上没有绘制任何内容,甚至没有调用 Matplotlib...

在搜索了一些非常有限的文档、简短教程或示例之后,我开始意识到上面的示例以及其他示例依赖于内联 Matplotlib 的 Jupyter Notebook...


如何在不使用 Jupyter Notebook 和直接内联 Matplotlib 的情况下绘制它?

我想 运行 它作为一个基本的 Python 脚本,我知道我可以像这样手动导入 Matplotlib 模块...

import Matplotlib.pyplot as plt

//... prev code
d.draw() // doesn't draw anything to the screen or to matplotlib's backend...
// plt.plot(...)? What goes here?
plt.show()

但是我不知道怎么用它来绘制SchemDraw的draw方法的结果...

失去 Matplotlib 交互 window 是 SchemDraw 0.7 中引入的回归错误。它已在 0.7.1 中修复,今天推送到 PyPi。在此版本中,d.draw() 如果 运行 作为脚本打开 Matplotlib window,如果 运行 在 Jupyter 内联模式下,则在单元格中显示输出。