Radio Button mode of Slider component - online display differences and some wierdness

URL of experiment:

Hi folks.

So the radio button mode of the slider component - once I knew this existed - has solved a LOT of my challenges and simplified my experiment significantly.

But it would seem that this component has a few wierd things going on. Any suggestions on how to address these would be great.

  1. Buttons / circles display at different sizes on-line to locally.

Locally:

On Pavlovia:

Which suggests to me that I will need to set the size of the component to different values using a code component with ‘both’ selected and then write code that assigns different height variables in the JS and Python panels. Is this the right approach?

And if so - how do I do this? I have tried writing code: Select_Gend.height = 1 Which doesn’t seem to do anything. I also tried: Select_Gend.size = [1,1] which throws an error.

What’s the syntax to update this variable? Thanks.

  1. A highly disconcerting phenomena of this component in this mode is that Psychopy sometimes seems to struggle to place the ‘selected’ dot in the centre of the ‘target’ circle. This seems to vary quite a bit - sometimes it’s bang on, sometimes it’s off-centre by quite a bit (see screenshot above). This happens both locally AND online. But when it’s off not only does it look quite, er, weird, but ALSO… the output that the component writes to the csv file is no longer an integer. O.o instead, for a simple 5 point likert scale I can get a value such as '4.9888888889. This is also true for .csv files generated by the online version of the experiment. Disconcerting.

So I am guessing this is a bug, and I can work around it - although it is going to be a PITA to code and update all my participant responses to get data I can work with. So unlesss there is some means of knocking this into shape, perhaps this is more a bug report and a warning to others. But if there was some tips on how to get this to behave a little bit better - that would be wonderful.

Thanks to all for your continued efforts to help with all this. I am getting close and closer to having this experiment written.

Regards,

Dan.

Hello Dan,

I use the Experiment Info at the beginning of the experiment to collect these kind of data. You can restrict the possible choices by surrounding them with brackets, e.g.
['woman','man','non binary/gender diverse','prefer not to say']

The disadvantage is that you can’t give any instructions at this point in time.

Bets wishes Jens

Hi Jens! That’s a cracker of an idea - and I wish I had thought of that earlier! But… may still consider regardless!

Thanks!

(I have a longer survey at the end of my experiment that I still need to solve this problem for tho…). :slight_smile:

D.

Hello Dan,

I am using formr for surveys.

Best wishes Jens

Try experimentInit(); in a JS code component in End Routine of your first routine – ensuring that your first routine lasts for a few hundred milliseconds. I think this will fit the dot position issue, which is caused by some of the sizes being calculated before the experiment enters full screen.

You can set the height using a parameter which itself is set in Begin Experiment (you can use a Both component to set different values offline and online).

Ah - ok - Terrific - I will give that a go.

I’m afraid I am still a bit unclear as to the actual syntax to use to set the height of the object though…

Sorry for being thick.

“You can set the height using a parameter which itself is set in Begin Experiment (you can use a Both component to set different values offline and online).”

I have tried writing code: Select_Gend.height = 1 Which doesn’t seem to do anything. I also tried: Select_Gend.size = [1,1] which throws an error.

How do I do this?

Thanks mate,

Dan.

I’ve only tried setting it in the component, not in code.

However, you could try selectGender.setSize([1,1])

Ah cool.

I’ll give that a go.

Thanks so much for all this handholding.

Will try to get that bug/feature request doc to you soon.

Regards,

Dan.