[英]matplotlib graphs in SPSS
是否可以在SPSS中使用內置的任何其他圖形庫? 我剛剛發現了使SPSS很棒的python擴展。
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安裝(如果需要Python 3,則在最新版本中安裝2.7版本,在版本24安裝3.4版本)。 然后轉到編輯>選項>文件並指向該分發。 您需要重新啟動統計信息才能生效。 我使用Anaconda發行版,其中包括許多其他好東西。
我不是Mac用戶,但這樣的事情應該有效。
作為另一個答案添加更多信息作為評論字段太有限。
我認為Windows上沒有框架錯誤,這是一個不同的問題。 但是在統計工作中運行你的代碼 - 有點像。 它不是將圖像放置在Viewer中,而是彈出自己的窗口(可能隱藏在另一個窗口后面)。
所以統計數據不知道它並且耐心地等待程序完成,直到你關閉那個窗口(圖中沒有顯示正常的框架)才會發生這種情況。
要使其工作,您需要指示matplotlib代碼將圖像寫入某個文件,然后使用SpssClient apis在查看器中插入該圖像。 請參閱Python可編程性幫助中的CreateImageChartItem方法(Python)。 或者,如果您可以指示matplotlib將圖像寫入標准輸出流,則Statistics可能能夠直接在Viewer中捕獲它。
我通常使用R代碼編寫可編程圖像(即使Python是一種更好的語言(!)),這一切都可以無縫地工作。 或者我使用Python代碼編寫統計圖形命令和GPL以使統計引擎非常強大,可以繪制圖表。
如果您使用的是Python,那么您會發現有用的另一件事是您可以在外部模式下運行Python,在這里您可以從運行IDE或Python命令行的Python代碼開始,然后讓它通過運行來調用統計信息
導入spss
這對於開發和調試Python代碼有很大的優勢,但是不能直接使用SpssClient模塊方法。 我從IDE(Wing Professional)運行您的代碼,圖像窗口立即彈出。 當然,您可以在外部模式下使用spss模塊和相關的apis與Statistics通信並對其進行控制。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.