SPSS 中的 matplotlib 图
matplotlib graphs in SPSS
是否可以使用 SPSS 中内置的任何其他图形库?我刚刚发现 python 扩展使 SPSS 变得很棒。
import matplotlib.pyplot as plt
from numpy.random import rand
fig, ax = plt.subplots()
for color in ['red', 'green', 'blue']:
n = 750
x, y = rand(2, n)
scale = 200.0 * rand(n)
ax.scatter(x, y, c=color, s=scale, label=color,
alpha=0.3, edgecolors='none')
ax.legend()
ax.grid(True)
plt.show()
这将创建一个简单的散点图,它在任何 IDE 中都可以正常工作,但是当尝试在 SPSS BEGIN PROGRAM
END PROGRAM
中使用该代码时,我收到以下错误:
RuntimeError: Python is not installed as a framework. The Mac OS X backend will not be able to function correctly if Python is not installed as a framework. See the Python documentation for more information on installing Python as a framework on Mac OS X.
Please either reinstall Python as a framework, or try one of the other backends. If you are Working with Matplotlib in a virtual enviroment see 'Working with Matplotlib in Virtual environments' in the Matplotlib FAQ
也许我对 SPSS 中的 python 扩展提出了太多要求,但最好使用其他图形库而不是他们内置的图形库。
您几乎可以使用任何 Python 代码或库,但需要进行一些配置。安装 Python 支持(Python Essentials)时,它会安装一个私有的、未注册的 Python 系统,以免与可能安装的任何其他 Python 冲突。因此,如果您尝试添加其他库,安装程序将不知道该做什么,或者将它们安装到 Statistics 安装不知道的地方。
解决此问题的最简单方法是安装另一个标准 Python 安装(最新版本为 2.7 版,如果需要 Python 3,则为 3.4 版和 24 版)。然后转到“编辑”>“选项”>“文件”并指向该分布。您需要重新启动 Statistics 才能生效。我使用 Anaconda 发行版,其中包含许多其他好东西。
我不是 Mac 用户,但像这样的东西应该有用。
由于评论字段太有限,添加更多信息作为另一个答案。
我没有在 Windows 上收到框架错误,我认为这是一个不同的问题。但是 运行 在 Statistics 中使用你的代码 - 有点。它没有将图像放在查看器中,而是以自己的 window 弹出(可能隐藏在另一个 window 后面)。
所以 Statistics 不知道它并耐心等待程序完成,直到您关闭 window(它确实有一个正常的框架,图中没有显示)才会发生。
要完成这项工作,您需要指示 matplotlib 代码将图像写入某处的文件,然后使用 SpssClient api 将该图像插入查看器。请参阅 Python 可编程性帮助中的 CreateImageChartItem 方法 (Python)。或者,如果您可以指示 matplotlib 将图像写入标准输出流,Statistics 可能能够直接在查看器中捕获它。
我通常使用 R 代码制作可编程图像(尽管 Python 是一种更好的语言 (!)),这一切都可以无缝运行。或者我使用 Python 代码编写 Statistics 图形命令和 GPL 以使用非常强大的 Statistics 引擎来绘制图表。
如果您喜欢 Python,您认为有帮助的另一件事是您可以 运行 Python 在外部模式下,您从 Python 代码开始 运行ning 从您的 IDE 或 Python 命令行,然后让它通过 运行ning
调用统计信息
导入 spss
这对于开发和调试Python代码有很大的好处,但是不能直接使用SpssClient模块方法。我 运行 你的代码来自我的 IDE (Wing Professional),图像 window 立即弹出。当然,你也可以在外部模式下使用spss模块和相关api来与Statistics通信并对其进行控制。
是否可以使用 SPSS 中内置的任何其他图形库?我刚刚发现 python 扩展使 SPSS 变得很棒。
import matplotlib.pyplot as plt
from numpy.random import rand
fig, ax = plt.subplots()
for color in ['red', 'green', 'blue']:
n = 750
x, y = rand(2, n)
scale = 200.0 * rand(n)
ax.scatter(x, y, c=color, s=scale, label=color,
alpha=0.3, edgecolors='none')
ax.legend()
ax.grid(True)
plt.show()
这将创建一个简单的散点图,它在任何 IDE 中都可以正常工作,但是当尝试在 SPSS BEGIN PROGRAM
END PROGRAM
中使用该代码时,我收到以下错误:
RuntimeError: Python is not installed as a framework. The Mac OS X backend will not be able to function correctly if Python is not installed as a framework. See the Python documentation for more information on installing Python as a framework on Mac OS X.
Please either reinstall Python as a framework, or try one of the other backends. If you are Working with Matplotlib in a virtual enviroment see 'Working with Matplotlib in Virtual environments' in the Matplotlib FAQ
也许我对 SPSS 中的 python 扩展提出了太多要求,但最好使用其他图形库而不是他们内置的图形库。
您几乎可以使用任何 Python 代码或库,但需要进行一些配置。安装 Python 支持(Python Essentials)时,它会安装一个私有的、未注册的 Python 系统,以免与可能安装的任何其他 Python 冲突。因此,如果您尝试添加其他库,安装程序将不知道该做什么,或者将它们安装到 Statistics 安装不知道的地方。
解决此问题的最简单方法是安装另一个标准 Python 安装(最新版本为 2.7 版,如果需要 Python 3,则为 3.4 版和 24 版)。然后转到“编辑”>“选项”>“文件”并指向该分布。您需要重新启动 Statistics 才能生效。我使用 Anaconda 发行版,其中包含许多其他好东西。
我不是 Mac 用户,但像这样的东西应该有用。
由于评论字段太有限,添加更多信息作为另一个答案。
我没有在 Windows 上收到框架错误,我认为这是一个不同的问题。但是 运行 在 Statistics 中使用你的代码 - 有点。它没有将图像放在查看器中,而是以自己的 window 弹出(可能隐藏在另一个 window 后面)。
所以 Statistics 不知道它并耐心等待程序完成,直到您关闭 window(它确实有一个正常的框架,图中没有显示)才会发生。
要完成这项工作,您需要指示 matplotlib 代码将图像写入某处的文件,然后使用 SpssClient api 将该图像插入查看器。请参阅 Python 可编程性帮助中的 CreateImageChartItem 方法 (Python)。或者,如果您可以指示 matplotlib 将图像写入标准输出流,Statistics 可能能够直接在查看器中捕获它。
我通常使用 R 代码制作可编程图像(尽管 Python 是一种更好的语言 (!)),这一切都可以无缝运行。或者我使用 Python 代码编写 Statistics 图形命令和 GPL 以使用非常强大的 Statistics 引擎来绘制图表。
如果您喜欢 Python,您认为有帮助的另一件事是您可以 运行 Python 在外部模式下,您从 Python 代码开始 运行ning 从您的 IDE 或 Python 命令行,然后让它通过 运行ning
调用统计信息导入 spss
这对于开发和调试Python代码有很大的好处,但是不能直接使用SpssClient模块方法。我 运行 你的代码来自我的 IDE (Wing Professional),图像 window 立即弹出。当然,你也可以在外部模式下使用spss模块和相关api来与Statistics通信并对其进行控制。