psychopy coder模式编写心理试验程序 图片呈现和量表评分
2015-04-22 00:00
417 查看
摘要: 作为psychopy的一个示例程序
python文件中写如下代码:
运行后可以呈现图片
把两个程序合在一起可以实现呈现图片,然后用量表评分,这里不做赘述。
psychopy 定做实验程序 https://item.taobao.com/item.htm?spm=a230r.1.14.6.Q6E2OW&id=530690095131&ns=1&abbucket=15#detail
呈现图片
准备一张图片和一个python文件,如下图:python文件中写如下代码:
# -*- coding: utf-8 -*- """ Created on Tue Apr 12 10:31:15 2016 @author: zbg """ from psychopy.visual import Window, ImageStim, TextStim from psychopy import core, event, gui import random name='1.png' win = Window() stim = ImageStim(win, name) stim.draw() texture = TextStim(win, text = u'按空格键退出', pos = [0,30], units = 'pix') texture.draw() win.flip() while 'space' not in event.getKeys(): pass win.close()
运行后可以呈现图片
量表评分
编写如下程序可以实现量表评分# -*- coding: utf-8 -*- """ Created on Sun Apr 19 16:50:21 2015 @author: zbg """ from psychopy.visual import Window, ImageStim, TextStim from psychopy import core, event, gui import random scales = [ ('Meaningful1', u"我能理解这幅画的意义"), ('Meaningful2', u"我能理解这幅画的主题"), ('Unity', u"这幅画的构图是和谐统一的"), ('Complexity', u"这幅画的构图是复杂的"), ('Variety', u"这幅画构图是多样的"), ('Liking', u"我喜欢这幅画"), ('Pleasing', u"这幅画使我感到愉悦"), ('Interesting', u"这幅画能引起我的兴趣。"), ] def ShowScale(text): def GetMyKey(): event.clearEvents1('all') keys=[] while True: while len(keys) == 0: core.wait(0.1) keys=event.getKeys() if keys[0] in ['1', '2', '3', '4', '5', '6', '7']: return keys[0] keys = [] t =TextStim(win, text ,pos=(0,-0.0)) t.draw() t =TextStim(win, u'1不同意------------------------------7非常同意',pos=(0,-50), units = 'pix') t.draw() win.flip() key = GetMyKey() t =TextStim(win, u'你按下了' + key,pos=(0,-0.2),color = (0 ,1.,0))#反馈 t.draw() win.flip() core.wait(0.5) return key win = Window() result = {} for label, text in scales: key = ShowScale(text) result[label] = key #把结果储存到字典里,后继可以保存到文件里。 win.close() print result
把两个程序合在一起可以实现呈现图片,然后用量表评分,这里不做赘述。
psychopy自带的量表工具
你也可以使用psychopy自带的量表工具,它支持鼠标选择或者按键数字选择,用回车键确认或者鼠标点击方框确认。以下是示例代码与运行截图:# -*- coding: utf-8 -*- """ Created on Tue Apr 12 10:31:15 2016 @author: zbg """ from psychopy import visual,event win = visual.Window() rating = visual.RatingScale(win=win, name='rating', marker=u'triangle', size=1.5, pos=[0.0, -0.4], low=1, high=7, labels=[u'不同意', u'中立', u'完全同意'], scale=u'你多大程度上赞同希拉里当选美国总统?') #item = <statement, question, image, movie, ...> while rating.noResponse: #item.draw() rating.draw() win.flip() visual.TextStim(win, text = u"选了%d用了%.3f秒\n按空格退出" % (rating.getRating(), rating.getRT())).draw() win.flip() while 'space' not in event.getKeys(): pass print rating.getRating() print rating.getRT() print rating.getHistory()
其他
另有一个完整的多种图片与量表评分的示例,完整程序(包括图片等文件)见:http://download.csdn.net/detail/zhanghao9547/8618453 或 http://vdisk.weibo.com/s/uu-WVvhhP2V2apsychopy 定做实验程序 https://item.taobao.com/item.htm?spm=a230r.1.14.6.Q6E2OW&id=530690095131&ns=1&abbucket=15#detail
相关文章推荐
- psychopy coder模式编写心理试验程序 字符程序和记录反应时
- python tkinter 编写心理学试验程序干扰任务之四则运算 psychopy
- python tkinter 编写心理学试验程序干扰任务之四则运算 psychopy
- V4L2摄像头获取单幅图片测试程序(MMAP模式)
- 编写程序,输出为返回 值的二进制位模式从左到右翻转后的值
- V4L2摄像头获取单幅图片测试程序(MMAP模式)
- V4L2摄像头获取单幅图片测试程序(MMAP模式)
- 使用wxWidgets为[图片转ascii的Pyton程序]编写图形界面
- Python程序中的观察者模式结构编写示例
- Golang 编写的图片压缩程序,质量、尺寸压缩,批量、单张压缩
- JAVA编写一个程序从网上下载一张图片
- 向Word中插入图片,C#编写的生成缩略图程序
- 使用python编写opencv程序(安装及载入图片)
- ASP.NET 3.5核心编程学习笔记(43):HTTP处理程序的编写之图片查看器
- V4L2摄像头获取单幅图片测试程序(MMAP模式)
- 编写高质量代码改善C#程序的157个建议——建议50:在Dispose模式中应区别对待托管资源和非托管资源
- PsychoPy入门_01_文字和图片的呈现
- v4L2摄像头获取单幅图片测试程序(MMAP模式)
- V4L2摄像头获取单幅图片测试程序(MMAP模式)
- 汇编试验五:编写、调试具有多个段的程序