Skip to content

Instantly share code, notes, and snippets.

@tadamatu
Last active December 2, 2018 08:18
Show Gist options
  • Save tadamatu/66a27e14991937423bde66639cfa788a to your computer and use it in GitHub Desktop.
Save tadamatu/66a27e14991937423bde66639cfa788a to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# 棒グラフ(bar) ※誤差ライン付き\n",
"import numpy as np\n",
"from matplotlib import pyplot as plt\n",
"\n",
"x = np.arange(5) # 0~5の等差数列\n",
"y = (4, 1, 3, 2, 5)\n",
"width = 0.5\n",
"yerr = (.1, .1, .08, .0, .5)\n",
"\n",
"plt.bar(x, y, width, align='center', yerr=yerr, ecolor='r')\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# 横棒グラフ(barh) ※誤差ライン付き\n",
"import numpy as np\n",
"from matplotlib import pyplot as plt\n",
"\n",
"x = np.arange(5) # 0~5の等差数列\n",
"y = (4, 1, 3, 2, 5)\n",
"width = 0.5\n",
"xerr = (.1, .08, .1, .0, .5)\n",
"\n",
"plt.barh(x, y, width, align='center', xerr=xerr, ecolor='r')\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# 積み上げ棒グラフ(bar)\n",
"import numpy as np\n",
"from matplotlib import pyplot as plt\n",
"\n",
"x = np.arange(5) # 0~5の等差数列\n",
"y = (3, 1, 4, 2, 5)\n",
"y2 = (2, 1, 3, 2, 1)\n",
"width = 0.3\n",
"\n",
"p1 = plt.bar(x, y, width, align='center')\n",
"p2 = plt.bar(x, y2, width, align='center', bottom=y)\n",
"\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# 散布図(scatter)\n",
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"\n",
"# np.random.seed(0) # ランダム値の固定\n",
"N = 50\n",
"x = np.random.rand(N)\n",
"y = np.random.rand(N)\n",
"\n",
"plt.scatter(x, y, alpha=0.5)\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# 散布図(scatter) ※サイズ変更付き\n",
"# https://matplotlib.org/gallery/shapes_and_collections/scatter.html#sphx-glr-gallery-shapes-and-collections-scatter-py\n",
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"\n",
"np.random.seed(0) # ランダム値の固定\n",
"N = 50\n",
"x = np.random.rand(N)\n",
"y = np.random.rand(N)\n",
"area = (30 * np.random.rand(N))**2\n",
"\n",
"plt.scatter(x, y, s=area, alpha=0.5)\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# 日付データプロット(plot_date)\n",
"import matplotlib.pyplot as plt\n",
"from matplotlib.dates import (DateFormatter, drange)\n",
"import numpy as np\n",
"import datetime\n",
"\n",
"# np.random.seed(0) # ランダム値の固定\n",
"formatter = DateFormatter('%Y/%m/%d/')\n",
"date1 = datetime.date(1970, 1, 1)\n",
"date2 = datetime.date(2018, 4, 12)\n",
"delta = datetime.timedelta(days=100)\n",
"\n",
"dates = drange(date1, date2, delta)\n",
"s = np.random.rand(len(dates))\n",
"\n",
"plt.plot_date(dates, s)\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# 折れ線グラフ(plot)\n",
"from matplotlib import pyplot as plt\n",
"import numpy as np\n",
"\n",
"# np.random.seed(0) # ランダム値の固定\n",
"x = np.random.rand(50)\n",
"\n",
"plt.plot(x)\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# 円グラフ(pie)\n",
"from matplotlib import pyplot as plt\n",
"from matplotlib.gridspec import GridSpec\n",
"\n",
"labels = 'A', 'B', 'C', 'D'\n",
"fracs = [10, 15, 30, 45]\n",
"\n",
"plt.pie(fracs, labels=labels, autopct='%1.1f%%')\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# 積上げ折れ線グラフ (stackplot)\n",
"# https://matplotlib.org/gallery/lines_bars_and_markers/stackplot_demo.html#sphx-glr-gallery-lines-bars-and-markers-stackplot-demo-py\n",
"import numpy as np\n",
"from matplotlib import pyplot as plt\n",
"\n",
"x = [1, 2, 3, 4, 5]\n",
"y1 = [1, 1, 2, 3, 5]\n",
"y2 = [0, 4, 2, 6, 8]\n",
"y3 = [1, 3, 5, 7, 9]\n",
"\n",
"plt.stackplot(x, y1, y2, y3)\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# ヒストグラム (hist)\n",
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"\n",
"# np.random.seed(0) # ランダム値の固定\n",
"mu, sigma = 100, 15\n",
"x = mu + sigma * np.random.randn(100)\n",
"\n",
"plt.hist(x, bins=30, density=True, alpha=0.75)\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# 2次元ヒストグラム (hist2d)\n",
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"\n",
"# np.random.seed(0) # ランダム値の固定\n",
"x = np.random.randn(100000)\n",
"y = np.random.randn(100000) + 5\n",
"\n",
"plt.hist2d(x, y, bins=40)\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# 矩形描画(broken_barh)\n",
"import numpy as np\n",
"from matplotlib import pyplot as plt\n",
"\n",
"x = [(1.5, 0.5), (3.5, 1.5)]\n",
"y = (0.5, 2.0)\n",
"\n",
"plt.broken_barh(x, y)\n",
"plt.xlim(0)\n",
"plt.ylim(0)\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# 箱ひげ(boxplot)\n",
"import numpy as np\n",
"from matplotlib import pyplot as plt\n",
"import random\n",
"\n",
"a = np.array([1, 3, 0.25, 0.44, 5.88])\n",
"plt.boxplot(a)\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"#バイオリン図 (violinplot)\n",
"import pandas as pd\n",
"import numpy as np\n",
"from matplotlib import pyplot as plt\n",
"\n",
"fs = 10\n",
"pos = [8, 2, 7, 5, 4, 8]\n",
"data = [np.random.normal(0, std, size=100) for std in pos]\n",
"\n",
"plt.violinplot(data, pos, points=20, widths=0.3, showmeans=True, showextrema=True, showmedians=True)\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# 等高線(contourf)\n",
"# https://matplotlib.org/gallery/images_contours_and_fields/contourf_demo.html#sphx-glr-gallery-images-contours-and-fields-contourf-demo-py\n",
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"\n",
"delta = 0.025\n",
"x = np.arange(-4.0, 3.0, delta)\n",
"y = np.arange(-2.0, 2.0, delta)\n",
"X, Y = np.meshgrid(x, y)\n",
"Z1 = np.exp(-X**2 - Y**2)\n",
"Z2 = np.exp(-(X - 1)**2 - (Y - 1)**2)\n",
"Z = (Z1 - Z2) * 2\n",
"\n",
"plt.figure()\n",
"plt.contourf(X, Y, Z)\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# 離散データ (stem)\n",
"# https://matplotlib.org/gallery/lines_bars_and_markers/stem_plot.html#sphx-glr-gallery-lines-bars-and-markers-stem-plot-py\n",
"from matplotlib import pyplot as plt\n",
"import numpy as np\n",
"\n",
"x = np.linspace(0.1, 2 * np.pi, 10)\n",
"plt.stem(x, np.cos(x), '-.')\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# 自己相関(acorr)\n",
"# https://matplotlib.org/gallery/lines_bars_and_markers/xcorr_acorr_demo.html#sphx-glr-gallery-lines-bars-and-markers-xcorr-acorr-demo-py\n",
"import numpy as np\n",
"from matplotlib import pyplot as plt\n",
"\n",
"x = np.random.normal(0, 10, 50)\n",
"plt.acorr(x)\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# 相互相関(xcorr)\n",
"# https://matplotlib.org/gallery/lines_bars_and_markers/xcorr_acorr_demo.html#sphx-glr-gallery-lines-bars-and-markers-xcorr-acorr-demo-py\n",
"import matplotlib.pyplot as plt\n",
"import numpy as np\n",
"\n",
"np.random.seed(0)\n",
"\n",
"x, y = np.random.randn(2, 100)\n",
"plt.xcorr(x, y, usevlines=True, maxlags=50, normed=True, lw=2)\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# 疑似カラー描画(pcolor)\n",
"# https://matplotlib.org/gallery/images_contours_and_fields/pcolor_demo.html#sphx-glr-gallery-images-contours-and-fields-pcolor-demo-py\n",
"import matplotlib.pyplot as plt\n",
"import numpy as np\n",
"\n",
"dx, dy = 0.15, 0.05\n",
"\n",
"y, x = np.mgrid[slice(-3, 3 + dy, dy), slice(-3, 3 + dx, dx)]\n",
"z = (1 - x / 2. + x ** 5 + y ** 3) * np.exp(-x ** 2 - y ** 2)\n",
"z = z[:-1, :-1]\n",
"z_min, z_max = -np.abs(z).max(), np.abs(z).max()\n",
"\n",
"plt.pcolor(x, y, z, cmap='RdBu', vmin=z_min, vmax=z_max)\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# ベクトル(quiver) ※上部のベクトルのキー 描画(quiverkey)\n",
"# https://matplotlib.org/gallery/images_contours_and_fields/quiver_demo.html#sphx-glr-gallery-images-contours-and-fields-quiver-demo-py\n",
"from matplotlib import pyplot as plt\n",
"import numpy as np\n",
"\n",
"X, Y = np.meshgrid(np.arange(0, 2 * np.pi, .2), np.arange(0, 2 * np.pi, .2))\n",
"U = np.cos(X)\n",
"V = np.sin(Y)\n",
"\n",
"Q = plt.quiver(X, Y, U, V, units='width')\n",
"plt.quiverkey(Q, 0.5, 0.9, 2, r'$2 \\frac{m}{s}$', labelpos='E', coordinates='figure')\n",
"\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 396x396 with 3 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# 散布図ヒストグラム(Scatter Hist) (scatter, hist)\n",
"# https://matplotlib.org/gallery/lines_bars_and_markers/scatter_hist.html#sphx-glr-gallery-lines-bars-and-markers-scatter-hist-py\n",
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"from mpl_toolkits.axes_grid1 import make_axes_locatable\n",
"\n",
"# Fixing random state for reproducibility\n",
"np.random.seed(19680801)\n",
"\n",
"\n",
"# the random data\n",
"x = np.random.randn(1000)\n",
"y = np.random.randn(1000)\n",
"\n",
"\n",
"fig, axScatter = plt.subplots(figsize=(5.5, 5.5))\n",
"\n",
"# the scatter plot:\n",
"axScatter.scatter(x, y)\n",
"axScatter.set_aspect(1.)\n",
"\n",
"# create new axes on the right and on the top of the current axes\n",
"# The first argument of the new_vertical(new_horizontal) method is\n",
"# the height (width) of the axes to be created in inches.\n",
"divider = make_axes_locatable(axScatter)\n",
"axHistx = divider.append_axes(\"top\", 1.2, pad=0.1, sharex=axScatter)\n",
"axHisty = divider.append_axes(\"right\", 1.2, pad=0.1, sharey=axScatter)\n",
"\n",
"# make some labels invisible\n",
"axHistx.xaxis.set_tick_params(labelbottom=False)\n",
"axHisty.yaxis.set_tick_params(labelleft=False)\n",
"\n",
"# now determine nice limits by hand:\n",
"binwidth = 0.25\n",
"xymax = max(np.max(np.abs(x)), np.max(np.abs(y)))\n",
"lim = (int(xymax/binwidth) + 1)*binwidth\n",
"\n",
"bins = np.arange(-lim, lim + binwidth, binwidth)\n",
"axHistx.hist(x, bins=bins)\n",
"axHisty.hist(y, bins=bins, orientation='horizontal')\n",
"\n",
"# the xaxis of axHistx and yaxis of axHisty are shared with axScatter,\n",
"# thus there is no need to manually adjust the xlim and ylim of these\n",
"# axis.\n",
"\n",
"axHistx.set_yticks([0, 50, 100])\n",
"\n",
"axHisty.set_xticks([0, 50, 100])\n",
"\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# 3D scatterplot (3D散布図)\n",
"# https://matplotlib.org/gallery/mplot3d/scatter3d.html#sphx-glr-gallery-mplot3d-scatter3d-py\n",
"# This import registers the 3D projection, but is otherwise unused.\n",
"from mpl_toolkits.mplot3d import Axes3D # noqa: F401 unused import\n",
"\n",
"import matplotlib.pyplot as plt\n",
"import numpy as np\n",
"\n",
"# Fixing random state for reproducibility\n",
"np.random.seed(19680801)\n",
"\n",
"\n",
"def randrange(n, vmin, vmax):\n",
" '''\n",
" Helper function to make an array of random numbers having shape (n, )\n",
" with each number distributed Uniform(vmin, vmax).\n",
" '''\n",
" return (vmax - vmin)*np.random.rand(n) + vmin\n",
"\n",
"fig = plt.figure()\n",
"ax = fig.add_subplot(111, projection='3d')\n",
"\n",
"n = 100\n",
"\n",
"# For each set of style and range settings, plot n random points in the box\n",
"# defined by x in [23, 32], y in [0, 100], z in [zlow, zhigh].\n",
"for c, m, zlow, zhigh in [('r', 'o', -50, -25), ('b', '^', -30, -5)]:\n",
" xs = randrange(n, 23, 32)\n",
" ys = randrange(n, 0, 100)\n",
" zs = randrange(n, zlow, zhigh)\n",
" ax.scatter(xs, ys, zs, c=c, marker=m)\n",
"\n",
"ax.set_xlabel('X Label')\n",
"ax.set_ylabel('Y Label')\n",
"ax.set_zlabel('Z Label')\n",
"\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.7.0"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment