title: Update plots for multiple plots in Dash
body: <p>i have a really basic question, mostly to understand how Dash works regarding the graph updating process when a variable changes. I'm just starting building a Dashboard and i'm still not familiar with the full syntax.</p>
  <p>I have a plot in my layout, a dropdown box, the callback and the update function, something like this:</p>
  <pre><code>@app.callback(
      Output(component_id='plot1', component_property='figure'),
      Input(component_id='drop1', component_property='value')
  )
  def update_graph(sel):
      &quot;&quot;&quot; Stuff for updating the plot &quot;&quot;&quot;
      return fig
  </code></pre>
  <p>Which works perfect, but i don't fully understand &quot;why&quot;.</p>
  <p>Now, my questions are...</p>
  <ol>
  <li>How the callback knows that update_graph() is the function to call in order to update that plot? It's never called inside the callback method, the dropdown selected value is never actually passed anywhere, etc.</li>
  <li>What happens if i have more than one dynamic plot? Another dropdown box or any other reactive element in my layout and i wanna update a second graph based on that second input object. I have to make another callback and another update function? How will, again, each callback know which one of the update functions to use?</li>
  </ol>
  <p>Thanks in advance!</p>