问题标签 [psychopy]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python-2.7 - 如何将代码发送到并行端口与 Psychopy 中的视觉刺激完全同步
我是 python 和 Psychopy 的新手,但是我在编程和设计实验(使用 Matlab 和 EPrime)方面拥有丰富的经验。我正在运行一个 RSVP(快速视觉串行演示)实验,每 X 毫秒显示一个不同的视觉刺激(X 是一个实验变量,可以从 100 毫秒到 1000 毫秒)。由于这是一项生理实验,我需要在刺激开始时通过并行端口发送触发器。我使用示波器和光电传感器测试触发器和视觉开始之间的同步。但是,当我在 win.flip() 之前或之后发送触发器时,即使使用窗口 waitBlanking=False 参数,我仍然会得到刺激开始和代码开始之间的差异。
附上我的代码:
如何将我的刺激开始同步到触发器?我不确定这是否是显卡问题(我正在使用带有板载 Intel 显卡的 LCD ACER 屏幕)。非常感谢,
沙尼
psychopy - 了解 PsychoPy 的数据记录
我有一个测试 PsychoPy Builder 脚本,我用它来调查一些违反直觉的行为。结构是四个例程:
“初始化”,不在循环中,“开始实验”中的以下代码:
“一个”,在一个循环中,“结束例程”中的以下代码:
“二”,在一个循环中,“结束例程”中的以下代码:
“三”,在一个循环中,“结束例程”中的以下代码:
没有其他代码,没有其他组件。例程“一”、“二”和“三”形成按该顺序执行五次的循环。CSV输出文件的相关列如下:
这是预期的输出吗?如果是这样,为什么?请注意,单个变量 x、y 和 z 每次循环都显示更新的值(在循环结束时),而列表 foo 仅显示循环迭代所有五次后的最终值,但它在每一行中都显示了这一点。但是调用列表中的单个元素会显示为单个变量。
这背后的逻辑和原理是什么?
有没有办法让列表输出像其他人一样执行?
有没有办法强制输出在调用 addData() 时捕获/显示这些变量中的任何一个,而不是等到循环结束?
psychopy - 在每次试验中随机呈现不同的任务
我使用 Psychopy v1.81.02,到目前为止我尝试了 Builder。
我的目标是编写一个实验,其中两个不同的任务分别呈现 32 种声音。这两个任务在指令(播放声音之前)和评级(播放声音之后)方面有所不同。声音和任务在每次试验中随机发生,即每个声音被分配给两个任务一次并且任务随机发生。最后,它用 32 个声音运行了 64 次试验:每个声音两次,两个任务,但声音和任务在试验中都是随机的。
在 Builder 中,我创建了两个例程:例程 1(= 任务 1)由指令_1 + 声音_1 + 评分_1 组成,例程 2(= 任务 2)由指令_2 + 声音_1 + 评分_2 组成。
为了调用声音,我包含了一个带有一个参数“audiofile”和 32 个条件(声音文件)的 .csv 文件,并将其置于“随机”状态。就声音的随机化而言,这很有效,但是我怎样才能使任务以随机顺序发生呢?我试图在例程周围放置一个循环,但不知道在“那里”放什么来随机化两个例程 - 这甚至可能吗?
python - 运行加载循环时在psychopy(python)中丢弃太多帧
我是python和psychopy的新手,我编写了一个“加载圈”,不幸的是我丢了太多帧。我正在使用 60 Hz 刷新率、全屏、没有互联网连接,并且计算机(MacBook Pro)足够强大。可能我的代码有问题(可能是每一帧中调用的 setVertices 方法),有人可以告诉我是否是这种情况,以及在psychopy中是否有替代方法来绘制加载圈(不丢帧太多)?非常感谢伊曼纽尔
python - Psychopy中评分量表上的两个不同tickHeights
我知道您可以在 Psychopy 中自定义评分量表上的 tickHeight。我想要两个不同的tickHeights。这是一个粗略的草图:
这可能吗?如果是这样,我该怎么做?
这是我到目前为止的评级量表代码:
python - 带数字键盘的心理评分量表
在我的任务中,我一直允许使用数字键盘(例如“num_1”)以及键盘顶部的常规数字(例如“1”)进行响应。当我稍后使用 询问评级ratingScale
时,我希望这两个选项都可用,但我不知道如何实现这一点。
按原样,ratingScale
不接受使用数字键盘的响应。我可以用 更改它respKeys
,但我必须提供“用于选择选项的键列表,以所需的顺序”。这意味着我不能让“1”和“num_1”都选择第一个评分(例如,respKeys = ['1','num_1, '2', 'num_2', ...]
“1”会选择第一个评分,“num_1”会选择第二个评分,等等)。
我真的坚持要么respKeys = ['1','2','3','4','5']
吗respKeys = ['num_1','num_2','num_3','num_4','num_5']
?
谢谢你的帮助!
functional-programming - 在 Builder 中为 Psychopy 编程点探针
我是使用 PsychoPy 的新手,我编写了一些简单的任务。我目前正在努力编写一个单词点探针。我不想使用 coder,只是因为我的研究团队的其他成员需要能够轻松地编辑程序、工作和使用它。
如果有人想知道我的具体问题是什么,我似乎无法同时正确加载图片,并且不知道一旦图片消失后如何让探测器出现在其中一张图片后面。
python - 如何从psychopy的iohub动态重命名hdf5文件
我正在使用 Psychopy 1.82.01 Coder 及其 iohub 功能(在 Ubuntu 14.04 LTS 上)。它正在工作,但我想知道是否有办法动态重命名它在实验期间生成的 hdf5 文件(这样最后,我知道它属于哪个参与者,两个参与者将获得两个文件而不会覆盖其中一个) . 在我看来,文件名是在这个文件中确定的:https ://github.com/psychopy/psychopy/blob/df68d434973817f92e5df78786da313b35322ae8/psychopy/iohub/default_config.yaml 但是有没有办法动态改变它?
python - 使用声音时,Psychopy 不会在脚本结束时退出
我最近在使用psychopy 时遇到了一个奇怪的错误,我的脚本在终止时不会杀死psychopy。
这只发生在我在例程中添加声音以及让psychopy 生成声音或从文件播放声音时。换句话说,仅从sound
psychopy 加载不会导致我的脚本无法退出。仅当我调用 中的声音时s=sound.Sound(value="C", secs=0.15)
,即使该声音实际上并没有在我的例程中播放s.play()
我试过用谷歌搜索看看其他人是否报告了这个问题,但似乎我有点孤独。我已经在以下两个 Mac 规格上对其进行了测试:
MacBook Pro 运行:
- OSX优胜美地
- 想到python 2.7
- 最新的psychopy(最近安装
easy_install
) - pyglet 1.2
- pyo 0.7.5
- Intel Iris 显卡/内置
iMac 运行:
- 与上述类似的一切
- NVIDIA独立显卡(暂时不记得型号)
这是我正在运行的一些示例代码。这对你来说很好吗?有人对可能发生的事情有建议吗?让我知道是否需要有关我的系统等的更多信息。
谢谢 :)
matplotlib - Psychopy 可以导入 matplotlib 但无法导入 pyplot 虽然它在我的 Mac 上
我在运行 OS X Yosemite 的 MacBook 上将 pyplot 导入psychopy 时遇到问题。我安装了psychopy v1.82.01。
我的程序包含:(import matplotlib
有效)和from matplotlib import pyplot
(给出以下错误):
ImportError: dlopen(/Applications/PsychoPy2.app/Contents/Resources/lib/python2.7/matplotlib/ft2font.so, 2): 未加载库:/usr/X11/lib/libfreetype.6.dylib 引用自:/ Applications/PsychoPy2.app/Contents/Resources/lib/python2.7/matplotlib/ft2font.so 原因:找不到图像
但我在 Mac 上有 pyplot.py:/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/matplotlib/pyplot.py
我如何从另一个文件夹中导入它?
谢谢,菲利普