docs: def render_dynamic_electrode_state_shapes(self):
          '''
          Render **dynamic** states reported by the electrode controller.
  
          **Dynamic** electrode states are only applied while a protocol is
          running -- _not_ while in real-time programming mode.
  
          See also :meth:`render_electrode_shapes()`.
  
  
          .. versionadded:: 0.12
          '''
          df_shapes = self.canvas.df_canvas_shapes.copy()
          # Only include shapes for electrodes reported as actuated.
          on_electrodes = self._dynamic_electrodes[self._dynamic_electrodes > 0]
          df_shapes = (df_shapes.set_index('id').loc[on_electrodes.index]
                       .reset_index())
  
          return self.render_electrode_shapes(df_shapes=df_shapes,
                                              shape_scale=0.75,
                                              # Lignt blue
                                              fill=(136 / 255.,
                                                    189 / 255.,
                                                    230 / 255.))