diff --git a/demo/illusions/circular.ipynb b/demo/illusions/circular.ipynb index f856bf60..99864854 100644 --- a/demo/illusions/circular.ipynb +++ b/demo/illusions/circular.ipynb @@ -297,6 +297,13 @@ "display(ui, out)" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Specification of `frequency`, `ring_width`, or `n_rings`:" + ] + }, { "cell_type": "code", "execution_count": null, @@ -342,35 +349,9 @@ "metadata": {}, "outputs": [], "source": [ - "from stimuli.illusions.circular import circular_white" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Parameterization" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "params = {\n", - " \"visual_size\": (10., 10.),\n", - " \"ppd\": 40.0,\n", - " \"frequency\": 1.,\n", - " \"intensity_discs\": (0., 1.),\n", - " \"intensity_background\": 0.5,\n", - " \"intensity_target\": 0.5,\n", - " \"target_indices\": 3,\n", - "}\n", + "from stimuli.illusions.circular import circular_white\n", "\n", - "stim = circular_white(**params)\n", - "plot_stim(stim)\n", - "plt.show()" + "help(circular_white)" ] }, { @@ -391,7 +372,7 @@ " \"visual_size\": (10., 10.),\n", " \"ppd\": 40.0,\n", " \"frequency\": 1.5,\n", - " \"intensity_discs\": (0., 1.),\n", + " \"intensity_rings\": (0., 1.),\n", " \"intensity_background\": 0.5,\n", " \"intensity_target\": 0.5\n", "}\n", @@ -403,13 +384,6 @@ "plt.show()" ] }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Interactive" - ] - }, { "cell_type": "code", "execution_count": null, @@ -417,51 +391,52 @@ "outputs": [], "source": [ "# Define widgets\n", - "w_length = iw.IntSlider(value=10, min=10, max=30, description=\"height [deg]\")\n", - "w_width = iw.IntSlider(value=10, min=10, max=30, description=\"width [deg]\")\n", + "w_length = iw.IntSlider(value=5, min=1, max=10, description=\"heigh/width [deg]\")\n", "w_ppd = iw.IntSlider(value=40, min=1, max=64, description=\"ppd\")\n", - "w_size = iw.HBox([w_length, w_width, w_ppd])\n", - "w_radius = iw.FloatSlider(value=1., min=0.1, max=2.0, description=\"Frequency\")\n", - "w_idisc1 = iw.FloatSlider(value=0.0, min=0., max=1.0, description=\"intensity disc 1\")\n", - "w_idisc2 = iw.FloatSlider(value=1.0, min=0., max=1.0, description=\"intensity disc 2\")\n", - "w_iback = iw.FloatSlider(value=0.5, min=0., max=1.0, description=\"intensity background\")\n", - "w_itarget = iw.FloatSlider(value=0.5, min=0., max=1.0, description=\"intensity target\")\n", - "w_intensities = iw.HBox([w_idisc1, w_idisc2, w_iback, w_itarget])\n", "\n", - "ui = iw.VBox([w_size, w_radius, w_intensities])\n", + "w_frequency = iw.FloatSlider(value=1, min=0.1, max=3.0, description=\"frequency\")\n", + "w_target_idx = iw.IntSlider(value=1, min=0, max=8, description=\"idx target\")\n", + "\n", + "w_iback = iw.FloatSlider(value=0.5, min=0.0, max=1.0, description=\"background intensity\")\n", + "w_itarget = iw.FloatSlider(value=0.5, min=0.0, max=1.0, description=\"target intensity\")\n", + "w_irings = iw.FloatRangeSlider(value=[0.0, 1.0], min=0.0, max=1.0, step=0.1, description=\"intensities\")\n", + "\n", + "# Layout\n", + "b_size = iw.HBox([w_length, w_ppd])\n", + "b_intensities = iw.HBox([w_itarget, w_iback, w_irings])\n", + "b_rings = iw.HBox([w_frequency, w_target_idx])\n", + "ui = iw.VBox([b_size, b_rings, b_intensities])\n", "\n", "def show_circular(\n", - " height=None,\n", - " width=None,\n", + " length=None,\n", " ppd=None,\n", " frequency=None,\n", - " intensity_disc1=None,\n", - " intensity_disc2=None,\n", + " target_indices=None,\n", + " intensity_rings=None,\n", " intensity_background=None,\n", - " intensity_target=None, \n", + " intensity_target=None,\n", "):\n", "\n", " stim = circular_white(\n", - " visual_size=(height, width),\n", + " visual_size=(length, length),\n", " ppd=ppd,\n", " frequency=frequency,\n", " intensity_background=intensity_background,\n", - " intensity_discs=(intensity_disc1, intensity_disc2),\n", + " intensity_rings=intensity_rings,\n", " intensity_target=intensity_target,\n", - " target_indices=(1)\n", + " target_indices=target_indices\n", " )\n", " plot_stim(stim)\n", "\n", "\n", "out = iw.interactive_output(show_circular,\n", " {\n", - " \"height\": w_length,\n", - " \"width\": w_width,\n", + " \"length\": w_length,\n", " \"ppd\": w_ppd,\n", - " \"frequency\": w_radius,\n", + " \"frequency\": w_frequency,\n", + " \"target_indices\": w_target_idx,\n", " \"intensity_background\": w_iback,\n", - " \"intensity_disc1\": w_idisc1,\n", - " \"intensity_disc2\": w_idisc2,\n", + " \"intensity_rings\": w_irings,\n", " \"intensity_target\": w_itarget,\n", " })\n", "\n", @@ -483,34 +458,57 @@ "metadata": {}, "outputs": [], "source": [ - "from stimuli.illusions.circular import circular_bullseye" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Parameterization" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "params = {\n", - " \"visual_size\": (10., 10.),\n", - " \"ppd\": 40.0,\n", - " \"frequency\": 1.,\n", - " \"intensity_discs\": (0., 1.),\n", - " \"intensity_background\": 0.5,\n", - " \"intensity_target\": 0.5,\n", - "}\n", + "from stimuli.illusions.circular import circular_bullseye\n", "\n", - "stim = circular_bullseye(**params)\n", - "plot_stim(stim)\n", - "plt.show()" + "help(circular_bullseye)\n", + "\n", + "# Define widgets\n", + "w_length = iw.IntSlider(value=5, min=1, max=10, description=\"heigh/width [deg]\")\n", + "w_ppd = iw.IntSlider(value=40, min=1, max=64, description=\"ppd\")\n", + "\n", + "w_frequency = iw.FloatSlider(value=1, min=0.1, max=3.0, description=\"frequency\")\n", + "\n", + "w_iback = iw.FloatSlider(value=0.5, min=0.0, max=1.0, description=\"background intensity\")\n", + "w_itarget = iw.FloatSlider(value=0.5, min=0.0, max=1.0, description=\"target intensity\")\n", + "w_irings = iw.FloatRangeSlider(value=[0.0, 1.0], min=0.0, max=1.0, step=0.1, description=\"intensities\")\n", + "\n", + "# Layout\n", + "b_size = iw.HBox([w_length, w_ppd])\n", + "b_intensities = iw.HBox([w_itarget, w_iback, w_irings])\n", + "b_rings = iw.HBox([w_frequency, w_nrings])\n", + "ui = iw.VBox([b_size, w_frequency, b_intensities])\n", + "\n", + "def show_bullseye(\n", + " length=None,\n", + " ppd=None,\n", + " frequency=None,\n", + " intensity_rings=None,\n", + " intensity_background=None,\n", + " intensity_target=None,\n", + "):\n", + "\n", + " stim = circular_bullseye(\n", + " visual_size=(length, length),\n", + " ppd=ppd,\n", + " frequency=frequency,\n", + " intensity_background=intensity_background,\n", + " intensity_rings=intensity_rings,\n", + " intensity_target=intensity_target,\n", + " )\n", + " plot_stim(stim)\n", + "\n", + "\n", + "out = iw.interactive_output(show_bullseye,\n", + " {\n", + " \"length\": w_length,\n", + " \"ppd\": w_ppd,\n", + " \"frequency\": w_frequency,\n", + " \"intensity_background\": w_iback,\n", + " \"intensity_rings\": w_irings,\n", + " \"intensity_target\": w_itarget,\n", + " })\n", + "\n", + "display(ui, out)" ] }, {