Skip to content

Instantly share code, notes, and snippets.

@hardingnj
Created June 20, 2018 11:32
Show Gist options
  • Save hardingnj/bc201d9cf9d52115b25b8242d5a59123 to your computer and use it in GitHub Desktop.
Save hardingnj/bc201d9cf9d52115b25b8242d5a59123 to your computer and use it in GitHub Desktop.
make an ehh example plot for presentations etc.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import matplotlib.pyplot as plt\n",
"%matplotlib inline\n",
"import seaborn as sns"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"import numpy as np"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/njh/miniconda3/envs/selection/lib/python3.5/site-packages/h5py/__init__.py:36: FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is deprecated. In future, it will be treated as `np.float64 == np.dtype(float).type`.\n",
" from ._conv import register_converters as _register_converters\n"
]
}
],
"source": [
"import allel"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [],
"source": [
"def sim_ehh(npos, nhap, altfreq):\n",
"\n",
" pfreq = (1 - altfreq, altfreq)\n",
" assert np.sum(pfreq) == 1\n",
" h = np.random.choice([0, 1], size=(npos, nhap), p=pfreq)\n",
" h[0] = 0\n",
" return allel.selection.ehh_decay(h)"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [],
"source": [
"sns.set(font_scale=1.5)\n",
"sns.set_style(\"whitegrid\")\n"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [],
"source": [
"n_positions = 150"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [],
"source": [
"ehh_r_sel = sim_ehh(n_positions, 40, 0.005)\n",
"ehh_l_sel = sim_ehh(n_positions, 40, 0.005)[::-1]\n",
"ehh_r_neu = sim_ehh(n_positions, 40, 0.02)\n",
"ehh_l_neu = sim_ehh(n_positions, 40, 0.02)[::-1]"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [],
"source": [
"pos = allel.SortedIndex(\n",
" np.sort(np.random.choice(range(10000), \n",
" size=n_positions*2, \n",
" replace=False)))"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [],
"source": [
"mp = np.median(pos)"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Text(0,0.5,'EHH')"
]
},
"execution_count": 20,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7fe99dce97f0>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"fix, ax = plt.subplots()\n",
"\n",
"ax.plot(pos - mp, \n",
" np.concatenate([ehh_l_neu, ehh_r_neu]), \n",
" label=\"Ancestral\")\n",
"\n",
"ax.plot(pos -mp, \n",
" np.concatenate([ehh_l_sel, ehh_r_sel]), \n",
" label=\"Derived\")\n",
"\n",
"ax.legend()\n",
"ax.set_xlabel(\"Relative genomic position (bp)\")\n",
"ax.set_ylabel(\"EHH\")"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"10.1111/mec.13382"
]
}
],
"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.5.0"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment