+x+x+x+x+x+xHi,
I am showing 2 images to respondents (for e.g.. which one looks 'Hot' and which one looks 'Cool').
They have to select on a likert . Is there a way that when they choose one the images as 'Hot' the other one automatically is chosen as 'Cool'.
Or any other way to do it ? Slider ?
Thanks
What does "chosen" mean in "[...] when they choose one the images as 'Hot' the other one automatically is
chosen as 'Cool'," i.e. what do you want to *do* with the respective images. Please give a concrete example.
Let’s say I show respondents two images - A cup of tea and Acan of soda. And they have to answer which one is hot and which one is cold ?
Below is a slider (sort of) whose one end is labelled ‘HOT’ andthe other end is labelled ‘COLD’.
When respondent drags ‘HOT’ to below the cup of tea, thenthe ‘COLD’ label automatically is shifted to below the other image (and viceversa).(since there are only two options)
I checked with slider, Likert or radiobuttons. Can’t do withany one of them.
Is it at all possible by any other means ?
Thanks
I'm having trouble with the likert / slider framing and frankly don't understand it; you cannot drag a slider's or likert's labels or poles around -- rather you drag some indicator either toward one pole or the other. I don't see how you could possibly use sliders or likerts for what you outlined.
What you'd need to do is implement some sort of "click and drag" mechanic, i.e., have the participant click and then drag one of the "labels" (two separate <text> elements, one for hot, one for cold) on to one of the two pictures. You can then position the other label on the other (not explicitly chosen) image automatically by adjusting its position.
This is doable, but not entirely trivial. For the basic idea / a starting point, see e.g. this thread:
https://www.millisecond.com/forums/FindPost15876.aspxb Hi Dave, Thanks for this.
Tried tweaking the code in the post mentioned by you, but amnot able to do it.
Basically, I have two images – Picture A and Picture B ( both randomized and selected from 2 differentlists).
And below are two text words – ‘Hot’ & ‘Cold’ (is it possible to counterbalance these too ? ).
Respondents have to drag both ‘Hot’ & ‘Cold’ over torespective images as they deem fit.
Any other resources / posts for ‘drag and drop’?
Thanks > And below are two text words – ‘Hot’ & ‘Cold’ (is it possible to counterbalance these too ? ).
Yes. In the same way you would randomize or counterbalance the positions of the images A and B.
> Any other resources / posts for ‘drag and drop’?
The most elaborate example would be the Tower of London script available in the library. Maybe take a look at that?
Here's a somewhat simple approach, foregoing the drag and drop stuff. 1st select the label you wish to assign -- either "hot" or "cold" -- and then click on the object (<text> elements in the example, but it works the same with <picture> elements) you wish to assign the selected label to:
<values>
/ itemnumber = 1
/ ax = 25%
/ ay = 50%
/ bx = 75%
/ by = 50%
/ hotx = 25%
/ hoty = 75%
/ coldx = 75%
/ coldy = 75%
</values>
<block myblock>
/ trials = [1-2 = select_label]
</block>
<trial select_label>
/ ontrialbegin = [
values.itemnumber = list.itemnumbers.nextindex;
values.hotx = 25%;
values.hoty = 75%;
values.coldx = 75%;
values.coldy = 75%;
]
/ ontrialend = [
if(trial.select_label.response == "hot") text.hot.textbgcolor = grey;
]
/ ontrialend = [
if(trial.select_label.response == "cold") text.cold.textbgcolor = grey;
]
/ stimulusframes = [1=a,b,hot,cold]
/ inputdevice = mouse
/ validresponse = (hot,cold)
/ branch = [
if(trial.select_label.response == "hot") trial.assign_hot else trial.assign_cold
]
</trial>
<trial assign_hot>
/ ontrialend = [
if(trial.assign_hot.response == "a") {
values.hotx = values.ax;
values.hoty = values.ay;
values.coldx = values.bx;
values.coldy = values.by;
}
]
/ ontrialend = [
if(trial.assign_hot.response == "b") {
values.hotx = values.bx;
values.hoty = values.by;
values.coldx = values.ax;
values.coldy = values.ay;
}
]
/ stimulusframes = [1=a,b,hot,cold]
/ inputdevice = mouse
/ validresponse = (a,b)
/ branch = [trial.result]
</trial>
<trial assign_cold>
/ ontrialend = [
if(trial.assign_cold.response == "a") {
values.coldx = values.ax;
values.coldy = values.ay;
values.hotx = values.bx;
values.hoty = values.by;
}
]
/ ontrialend = [
if(trial.assign_cold.response == "b") {
values.coldx = values.bx;
values.coldy = values.by;
values.hotx = values.ax;
values.hoty = values.ay;
}
]
/ stimulusframes = [1=a,b,hot,cold]
/ inputdevice = mouse
/ validresponse = (a,b)
/ branch = [trial.result]
</trial>
<trial result>
/ ontrialbegin = [
text.hot.textbgcolor = white;
text.cold.textbgcolor = white;
]
/ stimulusframes = [1=blank,a,b,hot,cold]
/ trialduration = 1000
/ validresponse = (0)
</trial>
<text hot>
/ items = ("HOT")
/ txcolor = red
/ hposition = values.hotx
/ vposition = values.hoty
/ erase = false
</text>
<text cold>
/ items = ("COLD")
/ txcolor = blue
/ hposition = values.coldx
/ vposition = values.coldy
/ erase = false
</text>
<text a>
/ items = aitems
/ select = values.itemnumber
/ hposition = values.ax
/ vposition = values.ay
/ erase = false
/ size = (20%, 30%)
/ txbgcolor = greenyellow
</text>
<text b>
/ items = bitems
/ select = values.itemnumber
/ hposition = values.bx
/ vposition = values.by
/ erase = false
/ size = (20%, 30%)
/ txbgcolor = greenyellow
</text>
<shape blank>
/ shape = rectangle
/ color = white
/ size = (100%,100%)
</shape>
<item aitems>
/ 1 = "cat"
/ 2 = "coffee"
</item>
<item bitems>
/ 1 = "dog"
/ 2 = "tea"
</item>
<list itemnumbers>
/ poolsize = 2
</list>
Hope this helps.