title: GNUPlot: From 3D scatter plot to Countour map
body: <p>Given the following list of <code>x,y,z</code> points (<code>z</code> is actually a signal strength indicator in dBm):</p>
  
  <pre><code>63  371 -21
  142 371 -9
  233 374 -18
  288 371 -36
  310 373 -38
  349 374 -39
  415 348 -44
  507 334 -49
  689 337 -56
  635 254 -57
  422 284 -42
  380 278 -39
  281 280 -39
  214 299 -34
  146 285 -30
  81  302 -39
  76  246 -39
  80  214 -44
  137 200 -44
  64  134 -48
  73  87  -48
  200 101 -46
  230 202 -44
  246 105 -53
  285 109 -53
  278 191 -50
  334 87  -54
  395 189 -56
  513 208 -58
  510 99  -61
  553 101 -62
  593 100 -65
  634 101 -64
  679 102 -68
  731 196 -70
  </code></pre>
  
  <p>I can quite easily generate a 3D scatter plot using this command in gnuplot:</p>
  
  <p><code>splot "C:/path/to/points.dat" with points</code></p>
  
  <p>What I'm really after is a way to "fill in the gaps" and create a surface. The ultimate goal is to use data like the points shown above to generate an RF map for a given WiFi access point. The resulting map would be used to calculate the possible locations of a device, given its RSSI (received signal strength indicator).</p>
  
  <p>(Several APs and their associated RF maps will be used, however I don't think the specifics are relevant to this question.)</p>
  
  <p>What would be the best way to interpolate the z-values (RSSI in dBm, in this case) for the remaining points?</p>
  
  <p><strong>EDIT :</strong></p>
  
  <p>I seem to have made some progress. Using <code>set dgrid3d 50,100 splines</code> before the <code>splot</code> command <em>seems</em> to generate more or less what I'm looking for. So the next question is: how can I replicate this kind of function in code (C#, ideally)?</p>