This file is indexed.

/usr/share/doc/stilts/sun256/layer-knn.html is in stilts-doc 3.1.2-2.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
<html>
   
   <head>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <link rel="stylesheet" type="text/css" href="sun-style.css">
      <title>knn</title>
   </head>
   
   <body>
      <hr>
      <a href="layer-densogram.html">Next</a> <a href="layer-kde.html">Previous</a> <a href="LayerType.html">Up</a> <a href="index.html">Contents</a> <br> <b>Next: </b><a href="layer-densogram.html">densogram</a><br>
       <b>Up: </b><a href="LayerType.html">Layer Types</a><br>
       <b>Previous: </b><a href="layer-kde.html">kde</a><br>
      
      <hr>
      <h4><a name="layer-knn">8.3.19 <code>knn</code></a></h4>
      <p>Plots a Discrete Kernel Density Estimate
         giving a smoothed frequency of data values along the
         horizontal axis, using an adaptive (K-Nearest-Neighbours)
         smoothing kernel.
         This is a generalisation of a histogram in which
         the bins are always 1 pixel wide,
         and a smoothing kernel is applied to each bin.
         The width and shape of the kernel may be varied.
         
      </p>
      <p>The K-Nearest-Neighbour figure gives the number of
         points in each direction to determine the width of the
         smoothing kernel for smoothing each bin.
         Upper and lower limits for the kernel width are also supplied;
         if the upper and lower limits are equal, this is equivalent
         to a fixed-width kernel.
         
      </p>
      <p>Note this is not a true Kernel Density Estimate,
         since, for performance reasons,
         the smoothing is applied to the (pixel-width) bins
         rather than to each data sample.
         The deviation from a true KDE caused by this quantisation
         will be at the pixel level,
         hence in most cases not visually apparent.
         
      </p>
      <p>
         <strong>Usage Overview:</strong>
         <pre>
   layerN=knn colorN=&lt;rrggbb&gt;|red|blue|... transparencyN=0..1 knnN=&lt;number&gt;
              symmetricN=true|false minsmoothN=+&lt;width&gt;|-&lt;count&gt;
              maxsmoothN=+&lt;width&gt;|-&lt;count&gt;
              kernelN=square|linear|epanechnikov|cos|cos2|gauss3|gauss6
              cumulativeN=true|false normaliseN=none|area|unit|maximum|height
              fillN=solid|line|semi thickN=&lt;pixels&gt; xN=&lt;num-expr&gt;
              weightN=&lt;num-expr&gt; inN=&lt;table&gt; ifmtN=&lt;in-format&gt;
              istreamN=true|false icmdN=&lt;cmds&gt;
</pre>
         </p>
      <p>All the parameters listed here
         affect only the relevant layer,
         identified by the suffix
         <code>N</code>.
         
      </p>
      <p>
         <strong>Example:</strong>
         
      </p>
      <div align="center"><img src="plot2-layer-knn.png" alt="" align="middle"></div>
      <p><pre>   stilts plot2plane <strong>layer1=knn</strong> <strong>in1=rrlyrae.fits</strong> <strong>x1=p1</strong></pre></p>
      <p>
         <dl>
            <dt><strong><code>colorN = &lt;rrggbb&gt;|red|blue|...</code> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<em>(<a href="http://docs.oracle.com/javase/6/docs/api/java/awt/Color.html">Color</a>)</em></strong></dt>
            <dd>The color of plotted data,
               given by name or as a hexadecimal RGB value.
               
               <p>The standard plotting colour names are
                  <code>red</code>, <code>blue</code>, <code>green</code>, <code>grey</code>, <code>magenta</code>, <code>cyan</code>, <code>orange</code>, <code>pink</code>, <code>yellow</code>, <code>black</code>, <code>light_grey</code>, <code>white</code>.
                  However, many other common colour names (too many to list here)
                  are also understood.
                  The list currently contains those colour names understood
                  by most web browsers,
                  from <code>AliceBlue</code> to <code>YellowGreen</code>,
                  listed e.g. in the
                  <em>Extended color keywords</em> section of
                  the <a href="http://www.w3c.org/TR/css3-color#svg-color">CSS3</a> standard.
                  
               </p>
               <p>Alternatively, a six-digit hexadecimal number <em>RRGGBB</em>
                  may be supplied,
                  optionally prefixed by "<code>#</code>" or "<code>0x</code>",
                  giving red, green and blue intensities,
                  e.g.  "<code>ff00ff</code>", "<code>#ff00ff</code>"
                  or "<code>0xff00ff</code>" for magenta.
                  
               </p>
               <p>[Default: <code>red</code>]
               </p>
            </dd>
            <dt><strong><code>cumulativeN = true|false</code> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<em>(Boolean)</em></strong></dt>
            <dd>If true, the histogram bars plotted are calculated
               cumulatively;
               each bin includes the counts from all previous bins.
               
               <p>[Default: <code>false</code>]
               </p>
            </dd>
            <dt><strong><code>fillN = solid|line|semi</code> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<em>(<a href="http://andromeda.star.bris.ac.uk/starjavadocs/uk/ac/starlink/ttools/plot2/layer/FillMode.html">FillMode</a>)</em></strong></dt>
            <dd>How the density function is represented.
               
               <p>The available options are:
                  
                  <ul>
                     <li><code>solid</code>: area between level and axis is filled with solid colour
                     </li>
                     <li><code>line</code>: level is marked by a wiggly line
                     </li>
                     <li><code>semi</code>: level is marked by a wiggly line, and area below it is filled with a transparent
                        colour
                     </li>
                  </ul>
                  
               </p>
               <p>[Default: <code>semi</code>]
               </p>
            </dd>
            <dt><strong><code>icmdN = &lt;cmds&gt;</code> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<em>(<a href="http://andromeda.star.bris.ac.uk/starjavadocs/uk/ac/starlink/ttools/filter/ProcessingStep.html">ProcessingStep[]</a>)</em></strong></dt>
            <dd>Specifies processing to be performed on
               the layer N input table as specified by parameter <code>inN</code>.
               The value of this parameter is one or more of the filter
               commands described in <a href="filterSteps.html">Section 6.1</a>.
               If more than one is given, they must be separated by
               semicolon characters (";").
               This parameter can be repeated multiple times on the same
               command line to build up a list of processing steps.
               The sequence of commands given in this way
               defines the processing pipeline which is performed on the table.
               
               <p>Commands may alteratively be supplied in an external file,
                  by using the indirection character '@'.
                  Thus a value of "<code>@filename</code>"
                  causes the file <code>filename</code> to be read for a list
                  of filter commands to execute.  The commands in the file
                  may be separated by newline characters and/or semicolons.
                  
               </p>
            </dd>
            <dt><strong><code>ifmtN = &lt;in-format&gt;</code> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<em>(String)</em></strong></dt>
            <dd>Specifies the format of the input table as specified by parameter <code>inN</code>.
               The known formats are listed in <a href="inFormats.html">Section 5.2.1</a>.
               This flag can be used if you know what format your
               table is in.
               If it has the special value
               <code>(auto)</code> (the default),
               then an attempt will be
               made to detect the format of the table automatically.
               This cannot always be done correctly however, in which case
               the program will exit with an error explaining which
               formats were attempted.
               
               <p>[Default: <code>(auto)</code>]
               </p>
            </dd>
            <dt><strong><code>inN = &lt;table&gt;</code> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<em>(<a href="http://www.starlink.ac.uk/stil/javadocs/uk/ac/starlink/table/StarTable.html">StarTable</a>)</em></strong></dt>
            <dd>The location of the input table.
               This may take one of the following forms:
               
               <ul>
                  <li>A filename.</li>
                  <li>A URL.</li>
                  <li>The special value "<code>-</code>",
                     meaning standard input.
                     In this case the input format must be given explicitly
                     using the <code>ifmtN</code>
                     parameter.
                     Note that not all formats can be streamed in this way.
                  </li>
                  <li>A system command line with
                     either a "<code>&lt;</code>" character at the start,
                     or a "<code>|</code>" character at the end
                     ("<code>&lt;syscmd</code>" or
                     "<code>syscmd|</code>").
                     This executes the given pipeline and reads from its
                     standard output.
                     This will probably only work on unix-like systems.
                  </li>
               </ul>
               
               In any case, compressed data in one of the supported compression
               formats (gzip, Unix compress or bzip2) will be decompressed
               transparently.
               
            </dd>
            <dt><strong><code>istreamN = true|false</code> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<em>(Boolean)</em></strong></dt>
            <dd>If set true, the input table
               specified by the <code>inN</code> parameter
               will be read as a stream.
               It is necessary to give the 
               <code>ifmtN</code> parameter
               in this case.
               Depending on the required operations and processing mode,
               this may cause the read to fail (sometimes it is necessary
               to read the table more than once).
               It is not normally necessary to set this flag;
               in most cases the data will be streamed automatically
               if that is the best thing to do.
               However it can sometimes result in less resource usage when
               processing large files in certain formats (such as VOTable).
               
               <p>[Default: <code>false</code>]
               </p>
            </dd>
            <dt><strong><code>kernelN = square|linear|epanechnikov|cos|cos2|gauss3|gauss6</code> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<em>(<a href="http://andromeda.star.bris.ac.uk/starjavadocs/uk/ac/starlink/ttools/plot2/layer/Kernel1dShape.html">Kernel1dShape</a>)</em></strong></dt>
            <dd>The functional form of the smoothing kernel.
               The functions listed refer to the unscaled shape;
               all kernels are normalised to give a total area of unity.
               
               <p>The available options are:
                  
                  <ul>
                     <li><code>square</code>: Uniform value: f(x)=1, |x|=0..1
                     </li>
                     <li><code>linear</code>: Triangle: f(x)=1-|x|, |x|=0..1
                     </li>
                     <li><code>epanechnikov</code>: Parabola: f(x)=1-x*x, |x|=0..1
                     </li>
                     <li><code>cos</code>: Cosine: f(x)=cos(x*pi/2), |x|=0..1
                     </li>
                     <li><code>cos2</code>: Cosine squared: f(x)=cos^2(x*pi/2), |x|=0..1
                     </li>
                     <li><code>gauss3</code>: Gaussian truncated at 3.0 sigma: f(x)=exp(-x*x/2), |x|=0..3
                     </li>
                     <li><code>gauss6</code>: Gaussian truncated at 6.0 sigma: f(x)=exp(-x*x/2), |x|=0..6
                     </li>
                  </ul>
                  
               </p>
               <p>[Default: <code>epanechnikov</code>]
               </p>
            </dd>
            <dt><strong><code>knnN = &lt;number&gt;</code> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<em>(Double)</em></strong></dt>
            <dd>Sets the number of nearest neighbours to count
               away from a sample point to determine the width
               of the smoothing kernel at that point.
               For the symmetric case this is the number of nearest
               neighbours summed over both directions,
               and for the asymmetric case it is the number in a single
               direction.
               
               <p>The threshold is actually the weighted total of samples;
                  for unweighted (<code>weight=1</code>) bins
                  that is equivalent to the number of samples.
                  
               </p>
               <p>[Default: <code>100</code>]
               </p>
            </dd>
            <dt><strong><code>maxsmoothN = +&lt;width&gt;|-&lt;count&gt;</code> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<em>(<a href="http://andromeda.star.bris.ac.uk/starjavadocs/uk/ac/starlink/ttools/plot2/layer/BinSizer.html">BinSizer</a>)</em></strong></dt>
            <dd>Fixes the
               maximum
               size of the smoothing kernel.
               This functions as
               an upper
               limit on the distance that is otherwise determined by
               searching for the K nearest neighbours at each sample point.
               
               <p>If the supplied value is a positive number
                  it is interpreted as a fixed width in the data coordinates
                  of the X axis
                  (if the X axis is logarithmic, the value is a fixed factor).
                  If it is a negative number, then it will be interpreted
                  as the approximate number of smooothing widths that fit
                  in the width of the visible plot
                  (i.e. plot width / smoothing width).
                  If the value is zero, no smoothing is applied.
                  
               </p>
               <p>When setting this value graphically,
                  you can use either the slider to adjust the bin count
                  or the numeric entry field to fix the bin width.
                  
               </p>
               <p>[Default: <code>-100</code>]
               </p>
            </dd>
            <dt><strong><code>minsmoothN = +&lt;width&gt;|-&lt;count&gt;</code> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<em>(<a href="http://andromeda.star.bris.ac.uk/starjavadocs/uk/ac/starlink/ttools/plot2/layer/BinSizer.html">BinSizer</a>)</em></strong></dt>
            <dd>Fixes the
               minimum
               size of the smoothing kernel.
               This functions as
               a lower
               limit on the distance that is otherwise determined by
               searching for the K nearest neighbours at each sample point.
               
               <p>If the supplied value is a positive number
                  it is interpreted as a fixed width in the data coordinates
                  of the X axis
                  (if the X axis is logarithmic, the value is a fixed factor).
                  If it is a negative number, then it will be interpreted
                  as the approximate number of smooothing widths that fit
                  in the width of the visible plot
                  (i.e. plot width / smoothing width).
                  If the value is zero, no smoothing is applied.
                  
               </p>
               <p>When setting this value graphically,
                  you can use either the slider to adjust the bin count
                  or the numeric entry field to fix the bin width.
                  
               </p>
               <p>[Default: <code>0</code>]
               </p>
            </dd>
            <dt><strong><code>normaliseN = none|area|unit|maximum|height</code> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<em>(<a href="http://andromeda.star.bris.ac.uk/starjavadocs/uk/ac/starlink/ttools/plot2/layer/Normalisation.html">Normalisation</a>)</em></strong></dt>
            <dd>Defines how, if at all, the bars of histogram-like plots
               are normalised or otherwise scaled vertically.
               
               <p>When used in the time plot only, time-specific options
                  like <code>per_second</code>
                  and <code>per_day</code>
                  are available.
                  
               </p>
               <p>The available options are:
                  
                  <ul>
                     <li><code>none</code>: No normalisation is performed.
                     </li>
                     <li><code>area</code>: The total area of histogram bars is normalised to unity. For cumulative plots, this
                        behaves like <code>height</code>.
                     </li>
                     <li><code>unit</code>: Histogram bars are scaled by the inverse of the bin width in data units. For cumulative
                        plots, this behaves like <code>none</code>.
                     </li>
                     <li><code>maximum</code>: The height of the tallest histogram bar is normalised to unity. For cumulative plots,
                        this behaves like <code>height</code>.
                     </li>
                     <li><code>height</code>: The total height of histogram bars is normalised to unity.
                     </li>
                  </ul>
                  
               </p>
               <p>[Default: <code>none</code>]
               </p>
            </dd>
            <dt><strong><code>symmetricN = true|false</code> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<em>(Boolean)</em></strong></dt>
            <dd>If true, the nearest neigbour search is carried out
               in both directions, and the kernel is symmetric.
               If false, the nearest neigbour search is carried out
               separately in the positive and negative directions,
               and the kernel width is accordingly different in the
               positive and negative directions.
               
               <p>[Default: <code>true</code>]
               </p>
            </dd>
            <dt><strong><code>thickN = &lt;pixels&gt;</code> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<em>(Integer)</em></strong></dt>
            <dd>Thickness of plotted line in pixels.
               
               <p>[Default: <code>2</code>]
               </p>
            </dd>
            <dt><strong><code>transparencyN = 0..1</code> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<em>(Double)</em></strong></dt>
            <dd>Transparency with which components are plotted,
               in the range 0 (opaque) to 1 (invisible).
               The value is 1-alpha.
               
               <p>[Default: <code>0</code>]
               </p>
            </dd>
            <dt><strong><code>weightN = &lt;num-expr&gt;</code> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<em>(String)</em></strong></dt>
            <dd>Weighting of data points.
               If supplied, each point contributes a value
               to the histogram equal to the data value
               multiplied by this coordinate.
               If not supplied, the effect is the same as
               supplying a fixed value of one.
               
               <p>The value is a numeric algebraic expression based on column names
                  as described in <a href="jel.html">Section 10</a>.
                  
               </p>
            </dd>
            <dt><strong><code>xN = &lt;num-expr&gt;</code> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<em>(String)</em></strong></dt>
            <dd>Horizontal coordinate.
               <p>The value is a numeric algebraic expression based on column names
                  as described in <a href="jel.html">Section 10</a>.
                  
               </p>
            </dd>
         </dl>
      </p>
      <hr><a href="layer-densogram.html">Next</a> <a href="layer-kde.html">Previous</a> <a href="LayerType.html">Up</a> <a href="index.html">Contents</a> <br> <b>Next: </b><a href="layer-densogram.html">densogram</a><br>
       <b>Up: </b><a href="LayerType.html">Layer Types</a><br>
       <b>Previous: </b><a href="layer-kde.html">kde</a><br>
      
      <hr><i>STILTS - Starlink Tables Infrastructure Library Tool Set<br>Starlink User Note256<br>STILTS web page:
         <a href="http://www.starlink.ac.uk/stilts/">http://www.starlink.ac.uk/stilts/</a><br>Author email:
         <a href="mailto:m.b.taylor@bristol.ac.uk">m.b.taylor@bristol.ac.uk</a><br>Mailing list:
         <a href="mailto:topcat-user@jiscmail.ac.uk">topcat-user@jiscmail.ac.uk</a><br></i></body>
</html>