diff --git a/doc/sf_and_dist/distributions/bernoulli.qbk b/doc/sf_and_dist/distributions/bernoulli.qbk
index 17200fb41..d22af07a1 100644
--- a/doc/sf_and_dist/distributions/bernoulli.qbk
+++ b/doc/sf_and_dist/distributions/bernoulli.qbk
@@ -42,11 +42,11 @@ The following graph illustrates how the
[@http://en.wikipedia.org/wiki/Probability_density_function probability density function pdf]
varies with the outcome of the single trial:
-[$../graphs/bernoulli_pdf.png]
+[graph bernoulli_pdf]
and the [@http://en.wikipedia.org/wiki/Cumulative_Distribution_Function Cumulative distribution function]
-[$../graphs/bernoulli_cdf.png]
+[graph bernoulli_cdf]
[h4 Member Functions]
diff --git a/doc/sf_and_dist/distributions/beta.qbk b/doc/sf_and_dist/distributions/beta.qbk
index 6686ea73c..3a88f925b 100644
--- a/doc/sf_and_dist/distributions/beta.qbk
+++ b/doc/sf_and_dist/distributions/beta.qbk
@@ -84,7 +84,7 @@ of the shape parameters. Note the [alpha] = [beta] = 2 (blue line)
is dome-shaped, and might be approximated by a symmetrical triangular
distribution.
-[$../graphs/beta_dist.png]
+[graph beta_pdf]
If [alpha] = [beta] = 1, then it is a __space
[@http://en.wikipedia.org/wiki/Uniform_distribution_%28continuous%29 uniform distribution],
diff --git a/doc/sf_and_dist/distributions/binomial.qbk b/doc/sf_and_dist/distributions/binomial.qbk
index cad52611d..d790e1708 100644
--- a/doc/sf_and_dist/distributions/binomial.qbk
+++ b/doc/sf_and_dist/distributions/binomial.qbk
@@ -76,12 +76,12 @@ The following two graphs illustrate how the PDF changes depending
upon the distributions parameters, first we'll keep the success
fraction /p/ fixed at 0.5, and vary the sample size:
-[$../graphs/binomial_pdf_1.png]
+[graph binomial_pdf_1]
Alternatively, we can keep the sample size fixed at N=20 and
vary the success fraction /p/:
-[$../graphs/binomial_pdf_2.png]
+[graph binomial_pdf_2]
[discrete_quantile_warning Binomial]
diff --git a/doc/sf_and_dist/distributions/cauchy.qbk b/doc/sf_and_dist/distributions/cauchy.qbk
index 34ff68dd1..f56fcbea0 100644
--- a/doc/sf_and_dist/distributions/cauchy.qbk
+++ b/doc/sf_and_dist/distributions/cauchy.qbk
@@ -44,12 +44,12 @@ of spectral lines.
The following graph shows how the distributions moves as the
location parameter changes:
-[$../graphs/cauchy1.png]
+[graph cauchy_pdf1]
While the following graph shows how the shape (scale) parameter alters
the distribution:
-[$../graphs/cauchy2.png]
+[graph cauchy_pdf2]
[h4 Member Functions]
diff --git a/doc/sf_and_dist/distributions/chi_squared.qbk b/doc/sf_and_dist/distributions/chi_squared.qbk
index abc8ec8cd..ed4f208a9 100644
--- a/doc/sf_and_dist/distributions/chi_squared.qbk
+++ b/doc/sf_and_dist/distributions/chi_squared.qbk
@@ -49,7 +49,7 @@ and has a single parameter [nu][space] that specifies the number of degrees of
freedom. The following graph illustrates how the distribution changes
for different values of [nu]:
-[$../graphs/chi_square.png]
+[graph chi_squared_pdf]
[h4 Member Functions]
diff --git a/doc/sf_and_dist/distributions/exponential.qbk b/doc/sf_and_dist/distributions/exponential.qbk
index 121f2802b..17d923a90 100644
--- a/doc/sf_and_dist/distributions/exponential.qbk
+++ b/doc/sf_and_dist/distributions/exponential.qbk
@@ -33,7 +33,7 @@ events that happen at a constant average rate.
The following graph shows how the distribution changes for different
values of the rate parameter lambda:
-[$../graphs/exponential_dist.png]
+[graph exponential_pdf]
[h4 Member Functions]
diff --git a/doc/sf_and_dist/distributions/extreme_value.qbk b/doc/sf_and_dist/distributions/extreme_value.qbk
index 2225e9449..5e81eb51e 100644
--- a/doc/sf_and_dist/distributions/extreme_value.qbk
+++ b/doc/sf_and_dist/distributions/extreme_value.qbk
@@ -51,11 +51,11 @@ f(x) = e[super -x]e[super -e[super -x]]
The following graph illustrates how the PDF varies with the location parameter:
-[$../graphs/extreme_val_dist.png]
+[graph extreme_value_pdf1]
And this graph illustrates how the PDF varies with the shape parameter:
-[$../graphs/extreme_val_dist2.png]
+[graph extreme_value_pdf2]
[h4 Member Functions]
diff --git a/doc/sf_and_dist/distributions/fisher.qbk b/doc/sf_and_dist/distributions/fisher.qbk
index 7887e2f94..3a4905ca4 100644
--- a/doc/sf_and_dist/distributions/fisher.qbk
+++ b/doc/sf_and_dist/distributions/fisher.qbk
@@ -41,7 +41,7 @@ has the PDF:
The following graph illustrates how the PDF varies depending on the
two degrees of freedom parameters.
-[$../graphs/fisher_f.png]
+[graph fisher_f_pdf]
[h4 Member Functions]
diff --git a/doc/sf_and_dist/distributions/gamma.qbk b/doc/sf_and_dist/distributions/gamma.qbk
index 1bc233351..9a84c7cb6 100644
--- a/doc/sf_and_dist/distributions/gamma.qbk
+++ b/doc/sf_and_dist/distributions/gamma.qbk
@@ -61,9 +61,9 @@ parameter], you should pass the reciprocal of the rate as the scale parameter.
The following two graphs illustrate how the PDF of the gamma distribution
varies as the parameters vary:
-[$../graphs/gamma_dist1.png]
+[graph gamma1_pdf]
-[$../graphs/gamma_dist2.png]
+[graph gamma2_pdf]
The [*Erlang Distribution] is the same as the Gamma, but with the shape parameter
an integer. It is often expressed using a /rate/ rather than a /scale/ as the
diff --git a/doc/sf_and_dist/distributions/lognormal.qbk b/doc/sf_and_dist/distributions/lognormal.qbk
index 33ac076d6..621da172a 100644
--- a/doc/sf_and_dist/distributions/lognormal.qbk
+++ b/doc/sf_and_dist/distributions/lognormal.qbk
@@ -43,11 +43,11 @@ parameter on the PDF, note that the range of the random
variable remains \[0,+[infin]\] irrespective of the value of the
location parameter:
-[$../graphs/lognormal1.png]
+[graph lognormal_pdf1]
The next graph illustrates the effect of the scale parameter on the PDF:
-[$../graphs/lognormal2.png]
+[graph lognormal_pdf2]
[h4 Member Functions]
diff --git a/doc/sf_and_dist/distributions/nc_beta.qbk b/doc/sf_and_dist/distributions/nc_beta.qbk
index 6b3b2a704..6f973fb5c 100644
--- a/doc/sf_and_dist/distributions/nc_beta.qbk
+++ b/doc/sf_and_dist/distributions/nc_beta.qbk
@@ -54,7 +54,7 @@ as:
The following graph illustrates how the distribution changes
for different values of [lambda]:
-[$../graphs/nc_beta_pdf.png]
+[graph nc_beta_pdf]
[h4 Member Functions]
diff --git a/doc/sf_and_dist/distributions/nc_chi_squared.qbk b/doc/sf_and_dist/distributions/nc_chi_squared.qbk
index a1d1e1544..ddf57769a 100644
--- a/doc/sf_and_dist/distributions/nc_chi_squared.qbk
+++ b/doc/sf_and_dist/distributions/nc_chi_squared.qbk
@@ -66,7 +66,7 @@ where ['f(x;k)] is the central chi-squared distribution PDF, and
The following graph illustrates how the distribution changes
for different values of [lambda]:
-[$../graphs/nccs_pdf.png]
+[graph nccs_pdf]
[h4 Member Functions]
diff --git a/doc/sf_and_dist/distributions/nc_f.qbk b/doc/sf_and_dist/distributions/nc_f.qbk
index 76791ff65..48682b5fd 100644
--- a/doc/sf_and_dist/distributions/nc_f.qbk
+++ b/doc/sf_and_dist/distributions/nc_f.qbk
@@ -51,7 +51,7 @@ __beta function, or
The following graph illustrates how the distribution changes
for different values of [lambda]:
-[$../graphs/nc_f_pdf.png]
+[graph nc_f_pdf]
[h4 Member Functions]
diff --git a/doc/sf_and_dist/distributions/nc_t.qbk b/doc/sf_and_dist/distributions/nc_t.qbk
index bc1c891e4..b437e1d2b 100644
--- a/doc/sf_and_dist/distributions/nc_t.qbk
+++ b/doc/sf_and_dist/distributions/nc_t.qbk
@@ -47,7 +47,7 @@ where [sub 1]F[sub 1](a;b;x) is a confluent hypergeometric function.
The following graph illustrates how the distribution changes
for different values of [delta]:
-[$../graphs/nc_t_pdf.png]
+[graph nc_t_pdf]
[h4 Member Functions]
diff --git a/doc/sf_and_dist/distributions/negative_binomial.qbk b/doc/sf_and_dist/distributions/negative_binomial.qbk
index de27bbe7b..5377a4bcd 100644
--- a/doc/sf_and_dist/distributions/negative_binomial.qbk
+++ b/doc/sf_and_dist/distributions/negative_binomial.qbk
@@ -72,12 +72,12 @@ It has the PDF:
The following graph illustrate how the PDF varies as the success fraction
/p/ changes:
-[$../graphs/neg_binomial_pdf1.png]
+[graph negative_binomial_pdf_1]
Alternatively, this graph shows how the shape of the PDF varies as
the number of successes changes:
-[$../graphs/neg_binomial_pdf2.png]
+[graph negative_binomial_pdf_2]
[h4 Related Distributions]
diff --git a/doc/sf_and_dist/distributions/normal.qbk b/doc/sf_and_dist/distributions/normal.qbk
index 1b057dd44..b33b5517b 100644
--- a/doc/sf_and_dist/distributions/normal.qbk
+++ b/doc/sf_and_dist/distributions/normal.qbk
@@ -40,7 +40,7 @@ Given mean [mu][space] and standard deviation [sigma][space] it has the PDF:
The variation the PDF with its parameters is illustrated
in the following graph:
-[$../graphs/normal.png]
+[graph normal_pdf]
[h4 Member Functions]
diff --git a/doc/sf_and_dist/distributions/pareto.qbk b/doc/sf_and_dist/distributions/pareto.qbk
index 040b3c622..82de7fc0e 100644
--- a/doc/sf_and_dist/distributions/pareto.qbk
+++ b/doc/sf_and_dist/distributions/pareto.qbk
@@ -37,11 +37,14 @@ The [@http://mathworld.wolfram.com/paretoDistribution.html Pareto distribution]
often describes the larger compared to the smaller.
A classic example is that 80% of the wealth is owned by 20% of the population.
-The following graph illustrates how the PDF varies with the shape parameter [alpha]:
+The following graph illustrates how the PDF varies with the location parameter [beta]:
+
+[graph pareto_pdf1]
+
+And this graph illustrates how the PDF varies with the shape parameter [alpha]:
+
+[graph pareto_pdf2]
-[/$../graphs/paretoShape.png]
-[/ TODO produce a graph as png or svg]
-[@http://upload.wikimedia.org/wikipedia/commons/thumb/d/d9/Pareto_distributionPDF.png/325px-Pareto_distributionPDF.png Pareto pdf]
[h4 Related distributions]
diff --git a/doc/sf_and_dist/distributions/poisson.qbk b/doc/sf_and_dist/distributions/poisson.qbk
index e65638a97..4e63eef98 100644
--- a/doc/sf_and_dist/distributions/poisson.qbk
+++ b/doc/sf_and_dist/distributions/poisson.qbk
@@ -41,7 +41,7 @@ for k events, with an expected number of events [lambda].
The following graph illustrates how the PDF varies with the parameter [lambda]:
-[$../graphs/poisson.png]
+[graph poisson_pdf_1]
[discrete_quantile_warning Poisson]
diff --git a/doc/sf_and_dist/distributions/rayleigh.qbk b/doc/sf_and_dist/distributions/rayleigh.qbk
index 8fa768406..b4e79d700 100644
--- a/doc/sf_and_dist/distributions/rayleigh.qbk
+++ b/doc/sf_and_dist/distributions/rayleigh.qbk
@@ -40,11 +40,11 @@ or real and imaginary components may have absolute values that are Rayleigh dist
The following graph illustrates how the Probability density Function(pdf) varies with the shape parameter [sigma]:
-[$../graphs/rayleigh_pdf.png]
+[graph rayleigh_pdf]
and the Cumulative Distribution Function (cdf)
-[$../graphs/rayleigh_cdf.png]
+[graph rayleigh_cdf]
[h4 Related distributions]
diff --git a/doc/sf_and_dist/distributions/students_t.qbk b/doc/sf_and_dist/distributions/students_t.qbk
index 25fcdf384..5a6b61032 100644
--- a/doc/sf_and_dist/distributions/students_t.qbk
+++ b/doc/sf_and_dist/distributions/students_t.qbk
@@ -55,7 +55,7 @@ As the number of degrees of freedom tends towards infinity, then this
distribution approaches the normal-distribution. The following graph
illustrates how the PDF varies with the degrees of freedom [nu]:
-[$../graphs/students_t.png]
+[graph students_t_pdf]
[h4 Member Functions]
diff --git a/doc/sf_and_dist/distributions/triangular.qbk b/doc/sf_and_dist/distributions/triangular.qbk
index eb04ee5a3..4b237f990 100644
--- a/doc/sf_and_dist/distributions/triangular.qbk
+++ b/doc/sf_and_dist/distributions/triangular.qbk
@@ -72,11 +72,11 @@ The following graph illustrates how the
[@http://en.wikipedia.org/wiki/Probability_density_function probability density function PDF]
varies with the various parameters:
-[$../graphs/triangular_pdf.png]
+[graph triangular_pdf]
and cumulative distribution function
-[$../graphs/triangular_cdf.png]
+[graph triangular_cdf]
[h4 Member Functions]
diff --git a/doc/sf_and_dist/distributions/uniform.qbk b/doc/sf_and_dist/distributions/uniform.qbk
index 098a8d150..5eb664802 100644
--- a/doc/sf_and_dist/distributions/uniform.qbk
+++ b/doc/sf_and_dist/distributions/uniform.qbk
@@ -61,11 +61,11 @@ The following graph illustrates how the
[@http://en.wikipedia.org/wiki/Probability_density_function probability density function PDF]
varies with the shape parameter:
-[$../graphs/uniform_pdf.png]
+[graph uniform_pdf]
Likewise for the CDF:
-[$../graphs/uniform_cdf.png]
+[graph uniform_cdf]
[h4 Member Functions]
diff --git a/doc/sf_and_dist/distributions/weibull.qbk b/doc/sf_and_dist/distributions/weibull.qbk
index 9530f7534..b0ed6680d 100644
--- a/doc/sf_and_dist/distributions/weibull.qbk
+++ b/doc/sf_and_dist/distributions/weibull.qbk
@@ -45,11 +45,11 @@ If the failure rate is:
The following graph illustrates how the PDF varies with the shape parameter [alpha]:
-[$../graphs/weibull.png]
+[graph weibull_pdf1]
While this graph illustrates how the PDF varies with the scale parameter [beta]:
-[$../graphs/weibull2.png]
+[graph weibull_pdf2]
[h4 Related distributions]
diff --git a/doc/sf_and_dist/graphs/acosh.png b/doc/sf_and_dist/graphs/acosh.png
new file mode 100644
index 000000000..0c0cab765
Binary files /dev/null and b/doc/sf_and_dist/graphs/acosh.png differ
diff --git a/doc/sf_and_dist/graphs/asinh.png b/doc/sf_and_dist/graphs/asinh.png
new file mode 100644
index 000000000..ad1571862
Binary files /dev/null and b/doc/sf_and_dist/graphs/asinh.png differ
diff --git a/doc/sf_and_dist/graphs/atanh.png b/doc/sf_and_dist/graphs/atanh.png
new file mode 100644
index 000000000..0beae9b85
Binary files /dev/null and b/doc/sf_and_dist/graphs/atanh.png differ
diff --git a/doc/sf_and_dist/graphs/bernoulli_cdf.png b/doc/sf_and_dist/graphs/bernoulli_cdf.png
index 8643e136d..7bafa601f 100644
Binary files a/doc/sf_and_dist/graphs/bernoulli_cdf.png and b/doc/sf_and_dist/graphs/bernoulli_cdf.png differ
diff --git a/doc/sf_and_dist/graphs/bernoulli_cdf.svg b/doc/sf_and_dist/graphs/bernoulli_cdf.svg
new file mode 100644
index 000000000..d1c6406c9
--- /dev/null
+++ b/doc/sf_and_dist/graphs/bernoulli_cdf.svg
@@ -0,0 +1,66 @@
+
+
diff --git a/doc/sf_and_dist/graphs/bernoulli_pdf.png b/doc/sf_and_dist/graphs/bernoulli_pdf.png
index cb7093eeb..c935109dd 100644
Binary files a/doc/sf_and_dist/graphs/bernoulli_pdf.png and b/doc/sf_and_dist/graphs/bernoulli_pdf.png differ
diff --git a/doc/sf_and_dist/graphs/bernoulli_pdf.svg b/doc/sf_and_dist/graphs/bernoulli_pdf.svg
new file mode 100644
index 000000000..6abe74a19
--- /dev/null
+++ b/doc/sf_and_dist/graphs/bernoulli_pdf.svg
@@ -0,0 +1,63 @@
+
+
diff --git a/doc/sf_and_dist/graphs/beta.png b/doc/sf_and_dist/graphs/beta.png
index 803348814..b03448831 100644
Binary files a/doc/sf_and_dist/graphs/beta.png and b/doc/sf_and_dist/graphs/beta.png differ
diff --git a/doc/sf_and_dist/graphs/beta_pdf.png b/doc/sf_and_dist/graphs/beta_pdf.png
index 024b7ffe5..a2271dac1 100644
Binary files a/doc/sf_and_dist/graphs/beta_pdf.png and b/doc/sf_and_dist/graphs/beta_pdf.png differ
diff --git a/doc/sf_and_dist/graphs/beta_pdf.svg b/doc/sf_and_dist/graphs/beta_pdf.svg
new file mode 100644
index 000000000..9a3879d61
--- /dev/null
+++ b/doc/sf_and_dist/graphs/beta_pdf.svg
@@ -0,0 +1,78 @@
+
+
diff --git a/doc/sf_and_dist/graphs/binomial_pdf_1.png b/doc/sf_and_dist/graphs/binomial_pdf_1.png
index 0b031e475..762141f54 100644
Binary files a/doc/sf_and_dist/graphs/binomial_pdf_1.png and b/doc/sf_and_dist/graphs/binomial_pdf_1.png differ
diff --git a/doc/sf_and_dist/graphs/binomial_pdf_1.svg b/doc/sf_and_dist/graphs/binomial_pdf_1.svg
new file mode 100644
index 000000000..a535aebb1
--- /dev/null
+++ b/doc/sf_and_dist/graphs/binomial_pdf_1.svg
@@ -0,0 +1,65 @@
+
+
diff --git a/doc/sf_and_dist/graphs/binomial_pdf_2.png b/doc/sf_and_dist/graphs/binomial_pdf_2.png
index f4cca5b2a..c9a7a1c8b 100644
Binary files a/doc/sf_and_dist/graphs/binomial_pdf_2.png and b/doc/sf_and_dist/graphs/binomial_pdf_2.png differ
diff --git a/doc/sf_and_dist/graphs/binomial_pdf_2.svg b/doc/sf_and_dist/graphs/binomial_pdf_2.svg
new file mode 100644
index 000000000..e647939ed
--- /dev/null
+++ b/doc/sf_and_dist/graphs/binomial_pdf_2.svg
@@ -0,0 +1,64 @@
+
+
diff --git a/doc/sf_and_dist/graphs/cauchy_pdf1.png b/doc/sf_and_dist/graphs/cauchy_pdf1.png
new file mode 100644
index 000000000..c6d366321
Binary files /dev/null and b/doc/sf_and_dist/graphs/cauchy_pdf1.png differ
diff --git a/doc/sf_and_dist/graphs/cauchy_pdf1.svg b/doc/sf_and_dist/graphs/cauchy_pdf1.svg
new file mode 100644
index 000000000..40268f15a
--- /dev/null
+++ b/doc/sf_and_dist/graphs/cauchy_pdf1.svg
@@ -0,0 +1,59 @@
+
+
diff --git a/doc/sf_and_dist/graphs/cauchy_pdf2.png b/doc/sf_and_dist/graphs/cauchy_pdf2.png
new file mode 100644
index 000000000..616190168
Binary files /dev/null and b/doc/sf_and_dist/graphs/cauchy_pdf2.png differ
diff --git a/doc/sf_and_dist/graphs/cauchy_pdf2.svg b/doc/sf_and_dist/graphs/cauchy_pdf2.svg
new file mode 100644
index 000000000..857ace9b9
--- /dev/null
+++ b/doc/sf_and_dist/graphs/cauchy_pdf2.svg
@@ -0,0 +1,63 @@
+
+
diff --git a/doc/sf_and_dist/graphs/cbrt.png b/doc/sf_and_dist/graphs/cbrt.png
new file mode 100644
index 000000000..81eb7c906
Binary files /dev/null and b/doc/sf_and_dist/graphs/cbrt.png differ
diff --git a/doc/sf_and_dist/graphs/chi_squared_pdf.png b/doc/sf_and_dist/graphs/chi_squared_pdf.png
new file mode 100644
index 000000000..32d0d2f04
Binary files /dev/null and b/doc/sf_and_dist/graphs/chi_squared_pdf.png differ
diff --git a/doc/sf_and_dist/graphs/chi_squared_pdf.svg b/doc/sf_and_dist/graphs/chi_squared_pdf.svg
new file mode 100644
index 000000000..05db45b6f
--- /dev/null
+++ b/doc/sf_and_dist/graphs/chi_squared_pdf.svg
@@ -0,0 +1,63 @@
+
+
diff --git a/doc/sf_and_dist/graphs/digamma.png b/doc/sf_and_dist/graphs/digamma.png
index d5b813837..6b2c58c58 100644
Binary files a/doc/sf_and_dist/graphs/digamma.png and b/doc/sf_and_dist/graphs/digamma.png differ
diff --git a/doc/sf_and_dist/graphs/dist_graphs.cpp b/doc/sf_and_dist/graphs/dist_graphs.cpp
index db609e3ba..045bf9cdf 100644
--- a/doc/sf_and_dist/graphs/dist_graphs.cpp
+++ b/doc/sf_and_dist/graphs/dist_graphs.cpp
@@ -10,6 +10,7 @@
# pragma warning (disable : 4512) // assignment operator could not be generated
//# pragma warning (disable : 4172) // returning address of local variable or temporary TODO find cause of these.
# pragma warning (disable : 4224) // nonstandard extension used : formal parameter 'function_ptr' was previously defined as a type
+# pragma warning (disable : 4127) // conditional expression is constant
#endif
#define BOOST_MATH_OVERFLOW_ERROR_POLICY ignore_error
@@ -22,6 +23,23 @@
#include