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
|
<html lang="en">
<head>
<title>Updating and accessing histogram elements - GNU Scientific Library -- Reference Manual</title>
<meta http-equiv="Content-Type" content="text/html">
<meta name="description" content="GNU Scientific Library -- Reference Manual">
<meta name="generator" content="makeinfo 4.8">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Histograms.html" title="Histograms">
<link rel="prev" href="Copying-Histograms.html" title="Copying Histograms">
<link rel="next" href="Searching-histogram-ranges.html" title="Searching histogram ranges">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<!--
Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 The GSL Team.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.2 or
any later version published by the Free Software Foundation; with the
Invariant Sections being ``GNU General Public License'' and ``Free Software
Needs Free Documentation'', the Front-Cover text being ``A GNU Manual'',
and with the Back-Cover Text being (a) (see below). A copy of the
license is included in the section entitled ``GNU Free Documentation
License''.
(a) The Back-Cover Text is: ``You have freedom to copy and modify this
GNU Manual, like GNU software.''-->
<meta http-equiv="Content-Style-Type" content="text/css">
<style type="text/css"><!--
pre.display { font-family:inherit }
pre.format { font-family:inherit }
pre.smalldisplay { font-family:inherit; font-size:smaller }
pre.smallformat { font-family:inherit; font-size:smaller }
pre.smallexample { font-size:smaller }
pre.smalllisp { font-size:smaller }
span.sc { font-variant:small-caps }
span.roman { font-family:serif; font-weight:normal; }
span.sansserif { font-family:sans-serif; font-weight:normal; }
--></style>
</head>
<body>
<div class="node">
<p>
<a name="Updating-and-accessing-histogram-elements"></a>
Next: <a rel="next" accesskey="n" href="Searching-histogram-ranges.html">Searching histogram ranges</a>,
Previous: <a rel="previous" accesskey="p" href="Copying-Histograms.html">Copying Histograms</a>,
Up: <a rel="up" accesskey="u" href="Histograms.html">Histograms</a>
<hr>
</div>
<h3 class="section">21.4 Updating and accessing histogram elements</h3>
<p>There are two ways to access histogram bins, either by specifying an
x coordinate or by using the bin-index directly. The functions
for accessing the histogram through x coordinates use a binary
search to identify the bin which covers the appropriate range.
<div class="defun">
— Function: int <b>gsl_histogram_increment</b> (<var>gsl_histogram * h, double x</var>)<var><a name="index-gsl_005fhistogram_005fincrement-1868"></a></var><br>
<blockquote><p>This function updates the histogram <var>h</var> by adding one (1.0) to the
bin whose range contains the coordinate <var>x</var>.
<p>If <var>x</var> lies in the valid range of the histogram then the function
returns zero to indicate success. If <var>x</var> is less than the lower
limit of the histogram then the function returns <code>GSL_EDOM</code>, and
none of bins are modified. Similarly, if the value of <var>x</var> is greater
than or equal to the upper limit of the histogram then the function
returns <code>GSL_EDOM</code>, and none of the bins are modified. The error
handler is not called, however, since it is often necessary to compute
histograms for a small range of a larger dataset, ignoring the values
outside the range of interest.
</p></blockquote></div>
<div class="defun">
— Function: int <b>gsl_histogram_accumulate</b> (<var>gsl_histogram * h, double x, double weight</var>)<var><a name="index-gsl_005fhistogram_005faccumulate-1869"></a></var><br>
<blockquote><p>This function is similar to <code>gsl_histogram_increment</code> but increases
the value of the appropriate bin in the histogram <var>h</var> by the
floating-point number <var>weight</var>.
</p></blockquote></div>
<div class="defun">
— Function: double <b>gsl_histogram_get</b> (<var>const gsl_histogram * h, size_t i</var>)<var><a name="index-gsl_005fhistogram_005fget-1870"></a></var><br>
<blockquote><p>This function returns the contents of the <var>i</var>-th bin of the histogram
<var>h</var>. If <var>i</var> lies outside the valid range of indices for the
histogram then the error handler is called with an error code of
<code>GSL_EDOM</code> and the function returns 0.
</p></blockquote></div>
<div class="defun">
— Function: int <b>gsl_histogram_get_range</b> (<var>const gsl_histogram * h, size_t i, double * lower, double * upper</var>)<var><a name="index-gsl_005fhistogram_005fget_005frange-1871"></a></var><br>
<blockquote><p>This function finds the upper and lower range limits of the <var>i</var>-th
bin of the histogram <var>h</var>. If the index <var>i</var> is valid then the
corresponding range limits are stored in <var>lower</var> and <var>upper</var>.
The lower limit is inclusive (i.e. events with this coordinate are
included in the bin) and the upper limit is exclusive (i.e. events with
the coordinate of the upper limit are excluded and fall in the
neighboring higher bin, if it exists). The function returns 0 to
indicate success. If <var>i</var> lies outside the valid range of indices for
the histogram then the error handler is called and the function returns
an error code of <code>GSL_EDOM</code>.
</p></blockquote></div>
<div class="defun">
— Function: double <b>gsl_histogram_max</b> (<var>const gsl_histogram * h</var>)<var><a name="index-gsl_005fhistogram_005fmax-1872"></a></var><br>
— Function: double <b>gsl_histogram_min</b> (<var>const gsl_histogram * h</var>)<var><a name="index-gsl_005fhistogram_005fmin-1873"></a></var><br>
— Function: size_t <b>gsl_histogram_bins</b> (<var>const gsl_histogram * h</var>)<var><a name="index-gsl_005fhistogram_005fbins-1874"></a></var><br>
<blockquote><p>These functions return the maximum upper and minimum lower range limits
and the number of bins of the histogram <var>h</var>. They provide a way of
determining these values without accessing the <code>gsl_histogram</code>
struct directly.
</p></blockquote></div>
<div class="defun">
— Function: void <b>gsl_histogram_reset</b> (<var>gsl_histogram * h</var>)<var><a name="index-gsl_005fhistogram_005freset-1875"></a></var><br>
<blockquote><p>This function resets all the bins in the histogram <var>h</var> to zero.
</p></blockquote></div>
<hr>The GNU Scientific Library - a free numerical library licensed under the GNU GPL<br>Back to the <a href="/software/gsl/">GNU Scientific Library Homepage</a></body></html>
|