Skip to content

Instantly share code, notes, and snippets.

@radzionc
Created May 13, 2018 12:12
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save radzionc/fdfe1f084eccbaeaec4a1f6ad1f16b73 to your computer and use it in GitHub Desktop.
Save radzionc/fdfe1f084eccbaeaec4a1f6ad1f16b73 to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 29,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1d067553668>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"from scipy.stats import chi2\n",
"\n",
"xs = np.arange(-10, 10, 0.001)\n",
"x2s = [x**2 for x in xs]\n",
"\n",
"for k in [1, 4, 8, 16, 24]:\n",
" plt.plot(x2s, chi2.pdf(x2s, k), label='k = {0}'.format(k))\n",
" \n",
"plt.xlim(0, 40)\n",
"plt.ylim(0, 0.5)\n",
"plt.legend()\n",
"plt.show()"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.4"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment