6

我正在尝试使用 music21 库,为涉及流派分类和分类的机器学习项目做准备。我和以下一些可用的教程在这里。我正在使用MuseScore作为我的MusicXML程序,并且我正在尝试从 iPython 运行整个程序。

虽然我可以从终端运行一些教程,但有些元素似乎不能从 iPython 内部很好地运行。例如:

In [3]: sBach.show()
Out[3]: <music21.ipython21.objects.IPythonPNGObject at 0x10da0aa10>

上面的行显示 PNG 对象已创建,但未显示。上述3的预期输出如下:

在此处输入图像描述 尝试使用以下 iPython 命令,我得到了图像的占位符,但没有图像。

In [6]: %load_ext music21.ipython21.ipExtension
In [7]: sBach.show()

我的 MusicXMLPath 没有任何问题。本教程是指在 Anaconda 中使用 musc21,但我所有的开发都是使用 Enthought 完成的,所以我不想运行另一个虚拟环境来使用 music21 和 iPython。

有没有办法在 Enthought/iPython 笔记本中运行 music21?

在此处输入图像描述

4

5 回答 5

4

我自己一直在努力解决这个问题。...您是否在 music21 中设置了您的 musicxmlPath?如果你还没有,它是通过environment.set(key, value). 您可以使用 查询可用的键environment.keys()。我希望这不是一个太简单的答案,但它为我解决了问题。

于 2015-07-16T22:43:54.273 回答
3

这应该在某个地方的 iPython music21 文档中,我很抱歉:music21 中的 iPython 需要安装 Lilypond 才能在笔记本本身中生成图像。还没有(在 MuseScore 2.0 发布之前也不会)使用 MusicXML 直接生成乐谱的 PNG 图像。

编辑:2015 年 7 月;music21 2.0 w/ MuseScore 2 如果安装了 MuseScore 将生成 PNG 图像,如果未安装则回退到 Lilypond。

于 2014-01-21T19:09:37.603 回答
2

如果尚未尝试,请采取一些步骤来隔离问题的原因:

1) 更新到最新的 Canopy(编辑:当前为 1.4.1)(可能对此有所帮助,一般会有所帮助,不会受到伤害)。

2) 通过 Preferences / Python 将 Canopy 的 IPython shell 中的 Pylab 后端更改为“Inline (SVG)”。(该 shell 中的默认 Qt 后端与 music21 对 tkinter 库的使用冲突。)

3)在那个shell而不是在笔记本中测试你的脚本。

4) 确保 Canopy User Python 是您在终端窗口中的默认 Python,如此所述。

5) 在普通的 ipython 终端中测试你的脚本(从终端,输入ipython)。

6) 在 ipython 终端中以 pylab 模式 ( ipython qtconsole --pylab=inline) 进行测试。

7) 在常规浏览器中运行的 ipython notebook 中测试您的脚本(从终端,输入ipython notebook和/或ipython notebook --pylab=inline)。

于 2014-01-12T16:59:24.323 回答
0

之前有过类似的问题。当人们尝试在/ notebook中使用plot函数时,也会出现同样的问题。你需要打电话ipythonjupyter

%matplotlib inline

于 2017-03-03T08:06:22.500 回答
0

对我来说,问题是通过卸载 musecore 的 snap 版本并通过https://launchpad.net/~msco ​​re-ubuntu/+archive/ubuntu/mscore3-stable 从 ppa:mscore-ubuntu/mscore3-stable 安装它来解决的

于 2020-02-18T19:15:57.320 回答