File:T distribution 30df enhanced.svg

Summary

Description
English: Student's t-distribution with 30 degrees of freedom. Enhanced imaging
Date
Source Own work
Author IkamusumeFan
SVG development
InfoField
 The SVG code is valid.
 This diagram was created with Matplotlib.
Category:Valid SVG created with Matplotlib#T%20distribution%2030df%20enhanced.svg
 The file size of this SVG plot may be irrationally large because its text has been converted to paths inhibiting translations.
Category:Path text SVG

Plot using Python Matplotlib.

Licensing

I, the copyright holder of this work, hereby publish it under the following license:
w:en:Creative Commons
attribution share alike
This file is licensed under the Creative Commons Attribution-Share Alike 3.0 Unported license.
You are free:
  • to share – to copy, distribute and transmit the work
  • to remix – to adapt the work
Under the following conditions:
  • attribution – You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
  • share alike – If you remix, transform, or build upon the material, you must distribute your contributions under the same or compatible license as the original.
Category:CC-BY-SA-3.0#T%20distribution%2030df%20enhanced.svgCategory:Self-published work

Python (Matplotlib)

import numpy as np
import matplotlib.pyplot as plt
import scipy.special as sp
 
X = np.arange(-4, 4, 0.01)	# range of the graph                                                                            
 
plt.clf()
plt.figure(figsize=(4,4))
plt.axes([0.17,0.13,0.79,0.8])
plt.hold(True)

Q = []	# No curves at first.

# Draw the previous Student's t-distributions
nu = 30	# freedom degree = 30
for previous_nu in range(1,nu):
	mu = 0	# mean = 0
	A = np.exp(sp.gammaln((previous_nu+1)/2.0));
	B = np.exp(sp.gammaln(previous_nu/2.0))*np.sqrt(previous_nu*np.pi);
	C = (1+X*X/previous_nu)**(-(previous_nu+1)/2.0);
	Y = A*C/B;
	a = plt.plot(X, Y, '-', color='green', lw=1)
	Q.append(a)

# Draw the curve of Normal distribution
mu = 0	# mean = 0
sigma = 1	# variance = 1
A = 1/(sigma*np.sqrt(2*np.pi))
B = np.exp(-(X-mu)*(X-mu)/(2*sigma*sigma));
Y = A*B
a = plt.plot(X, Y, '-', color='blue', lw=2)
Q.append(a)
	
# Draw the curve of Student's t-distribution
mu = 0	# mean = 0
A = np.exp(sp.gammaln((nu+1)/2.0));
B = np.exp(sp.gammaln(nu/2.0))*np.sqrt(nu*np.pi);
C = (1+X*X/nu)**(-(nu+1)/2.0);
Y = A*C/B;
a = plt.plot(X, Y, '-', color='red', lw=2)
Q.append(a)
	
# Remaining steps to finish drawing the graph. 
plt.xlabel("x")
plt.ylabel("P(x)")
plt.xlim(-4,4)

# Saving the output.
plt.savefig("T_distribution_1df.pdf")
plt.savefig("T_distribution_1df.eps")
plt.savefig("T_distribution_1df.svg")
Category:Student's t-distribution
Category:CC-BY-SA-3.0 Category:Path text SVG Category:Self-published work Category:Student's t-distribution Category:Valid SVG created with Matplotlib