title: Developing a matplotlib surface from a nested dictionary
body: <p>I have a data structure which is generated from the following (where [a] func1 and func2 are placeholder functions and [b] i1, etc. are placeholder variable values):</p>
  
  <pre><code>def func1(x,y,z):
      return x+y/z
  
  def func2(x,y,z):
      return x/y+z
  
  var1 = [i1, i2, ..., i]
  var2 = [j1, j2, ..., j]
  var3 = [k1, k2, ..., k]
  
  data_bin = {}
  
  for i in var1:
      data_bin[i] = {}
  
      for j in var2:
          data_bin[i][j] = {}
  
          for k in var3:
              data_bin[i][j][k] = [func1(i,j,k), func2(i,j,k)]
  </code></pre>
  
  <p>Which yields a data structure like so:</p>
  
  <pre><code>{i1 : {j1 : {k1 : [func1_val, func2_val], ...}, ...}, ...}
  </code></pre>
  
  <p>And I am trying to create plots like so (pseudocode)</p>
  
  <pre><code>for given i1:
      x-axis = j
      y-axis = k
      z-axis = func1_val
  </code></pre>
  
  <p>or</p>
  
  <pre><code>for given k1:
      x-axis = i
      y-axis = j
      z-axis = func2_val
  </code></pre>
  
  <p>How do I go about looping through the dictionary in order to extract these values into working bins to use in matplotlib or something?</p>
  
  <p>Thanks!</p>