├── .ipynb_checkpoints ├── 01. Python读取Excel绘制柱状图-checkpoint.ipynb ├── 02. Python读取Excel绘制直方图-checkpoint.ipynb ├── 03. Python绘制电商网站转化漏斗图-checkpoint.ipynb ├── 04. Python通过折线图发现产品问题-checkpoint.ipynb ├── 05. Python绘制饼图分析北京天气-checkpoint.ipynb ├── 06. Python绘制散点图查看BMI与保险费的关系-checkpoint.ipynb ├── 07. Python绘制箱形图分析北京天气数据-checkpoint.ipynb ├── 08. Python绘制热力图查看两个分类变量之间的强度分布-checkpoint.ipynb ├── 09. Python绘制仪表盘图直观展示目标完成进度-checkpoint.ipynb ├── 10. Python绘制足球传递网络图-checkpoint.ipynb ├── 11. Python绘制小提琴图-checkpoint.ipynb ├── 12. Python绘制中国地图和城市图表-checkpoint.ipynb ├── 13. Python绘制预算开销雷达图-checkpoint.ipynb ├── 14. Python绘制桑基图分析广告转化数据-checkpoint.ipynb ├── 15. Python绘制词云图展示射雕英雄传高频词语-checkpoint.ipynb ├── 16. Python绘制时间线轮播多图-checkpoint.ipynb ├── 17. Python绘制树状图-checkpoint.ipynb └── test-checkpoint.ipynb ├── 01. Python读取Excel绘制柱状图.ipynb ├── 02. Python读取Excel绘制直方图.ipynb ├── 03. Python绘制电商网站转化漏斗图.ipynb ├── 04. Python通过折线图发现产品问题.ipynb ├── 05. Python绘制饼图分析北京天气.ipynb ├── 06. Python绘制散点图查看BMI与保险费的关系.ipynb ├── 07. Python绘制箱形图分析北京天气数据.ipynb ├── 08. Python绘制热力图查看两个分类变量之间的强度分布.ipynb ├── 09. Python绘制仪表盘图直观展示目标完成进度.ipynb ├── 10. Python绘制足球传递网络图.ipynb ├── 11. Python绘制小提琴图.ipynb ├── 12. Python绘制中国地图和城市图表.ipynb ├── 13. Python绘制预算开销雷达图.ipynb ├── 14. Python绘制桑基图分析广告转化数据.ipynb ├── 15. Python绘制词云图展示射雕英雄传高频词语.ipynb ├── 16. Python绘制时间线轮播多图.ipynb ├── 17. Python绘制树状图.ipynb ├── README.md ├── boxplot_base.html ├── datas ├── KAG_conversion_data.csv ├── beijing_tianqi │ ├── beijing_tianqi_2017-2019.csv │ ├── beijing_tianqi_2018.csv │ └── beijing_tianqi_2019.csv ├── boston-house-prices │ ├── Index │ ├── housing.csv │ ├── housing.data │ ├── housing.names │ ├── housing.xlsx │ ├── housing_clean.csv │ └── 数据源.txt ├── ecommerce-website-funnel-analysis │ ├── .ipynb_checkpoints │ │ └── funnel-vizualitation-with-plotly-checkpoint.ipynb │ ├── home_page_table.csv │ ├── payment_confirmation_table.csv │ ├── payment_page_table.csv │ ├── readme.md │ ├── search_page_table.csv │ └── user_table.csv ├── insurance │ └── insurance.csv ├── other_files │ ├── ant_boxplot.png │ ├── boxplot.png │ └── tuzhidian_boxplot.jpeg ├── passingevents.csv ├── titanic │ ├── titanic_test.csv │ └── titanic_train.csv └── 服装销售数据.xlsx ├── flare.json ├── flask-diagrams ├── .idea │ ├── .gitignore │ ├── flask-diagrams.iml │ ├── inspectionProfiles │ │ └── profiles_settings.xml │ ├── misc.xml │ ├── modules.xml │ └── vcs.xml ├── __pycache__ │ └── app.cpython-37.pyc ├── app.py ├── static │ ├── echarts.min.js │ ├── my_matplotlib.png │ └── my_seaborn.png └── templates │ └── show_diagrams.html ├── graph_base.html ├── heatmap_base.html ├── requirements.txt ├── test.ipynb ├── timeline_pie.html └── 射雕英雄传.txt /.ipynb_checkpoints/01. Python读取Excel绘制柱状图-checkpoint.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "## Python读取Excel绘制柱状图" 8 | ] 9 | }, 10 | { 11 | "cell_type": "markdown", 12 | "metadata": {}, 13 | "source": [ 14 | "### 读取Excel数据" 15 | ] 16 | }, 17 | { 18 | "cell_type": "code", 19 | "execution_count": 1, 20 | "metadata": {}, 21 | "outputs": [], 22 | "source": [ 23 | "import pandas as pd" 24 | ] 25 | }, 26 | { 27 | "cell_type": "code", 28 | "execution_count": 2, 29 | "metadata": {}, 30 | "outputs": [], 31 | "source": [ 32 | "df = pd.read_excel(\"./服装销售数据.xlsx\")" 33 | ] 34 | }, 35 | { 36 | "cell_type": "code", 37 | "execution_count": 3, 38 | "metadata": {}, 39 | "outputs": [ 40 | { 41 | "data": { 42 | "text/html": [ 43 | "
\n", 44 | "\n", 57 | "\n", 58 | " \n", 59 | " \n", 60 | " \n", 61 | " \n", 62 | " \n", 63 | " \n", 64 | " \n", 65 | " \n", 66 | " \n", 67 | " \n", 68 | " \n", 69 | " \n", 70 | " \n", 71 | " \n", 72 | " \n", 73 | " \n", 74 | " \n", 75 | " \n", 76 | " \n", 77 | " \n", 78 | " \n", 79 | " \n", 80 | " \n", 81 | " \n", 82 | " \n", 83 | " \n", 84 | " \n", 85 | " \n", 86 | " \n", 87 | " \n", 88 | " \n", 89 | " \n", 90 | " \n", 91 | " \n", 92 | " \n", 93 | " \n", 94 | " \n", 95 | " \n", 96 | " \n", 97 | " \n", 98 | " \n", 99 | " \n", 100 | " \n", 101 | " \n", 102 | " \n", 103 | " \n", 104 | " \n", 105 | " \n", 106 | " \n", 107 | " \n", 108 | " \n", 109 | " \n", 110 | "
商品商家A商家B
0衬衫42123
1毛衣7835
2领带13526
3裤子2572
4风衣13528
5高跟鞋5826
6袜子43101
\n", 111 | "
" 112 | ], 113 | "text/plain": [ 114 | " 商品 商家A 商家B\n", 115 | "0 衬衫 42 123\n", 116 | "1 毛衣 78 35\n", 117 | "2 领带 135 26\n", 118 | "3 裤子 25 72\n", 119 | "4 风衣 135 28\n", 120 | "5 高跟鞋 58 26\n", 121 | "6 袜子 43 101" 122 | ] 123 | }, 124 | "execution_count": 3, 125 | "metadata": {}, 126 | "output_type": "execute_result" 127 | } 128 | ], 129 | "source": [ 130 | "df" 131 | ] 132 | }, 133 | { 134 | "cell_type": "markdown", 135 | "metadata": {}, 136 | "source": [ 137 | "### 绘制柱状图" 138 | ] 139 | }, 140 | { 141 | "cell_type": "code", 142 | "execution_count": 4, 143 | "metadata": {}, 144 | "outputs": [], 145 | "source": [ 146 | "from pyecharts import options as opts\n", 147 | "from pyecharts.charts import Bar" 148 | ] 149 | }, 150 | { 151 | "cell_type": "code", 152 | "execution_count": 5, 153 | "metadata": {}, 154 | "outputs": [], 155 | "source": [ 156 | "bar = (\n", 157 | " Bar()\n", 158 | " .add_xaxis(df[\"商品\"].to_list())\n", 159 | " .add_yaxis(\"商家A\", df[\"商家A\"].to_list())\n", 160 | " .add_yaxis(\"商家B\", df[\"商家B\"].to_list())\n", 161 | " .set_global_opts(title_opts=opts.TitleOpts(title=\"商品销量对比图\"))\n", 162 | ")" 163 | ] 164 | }, 165 | { 166 | "cell_type": "code", 167 | "execution_count": 6, 168 | "metadata": {}, 169 | "outputs": [ 170 | { 171 | "data": { 172 | "text/html": [ 173 | "\n", 174 | "\n", 181 | "\n", 182 | "
\n", 183 | "\n", 184 | "\n" 358 | ], 359 | "text/plain": [ 360 | "" 361 | ] 362 | }, 363 | "execution_count": 6, 364 | "metadata": {}, 365 | "output_type": "execute_result" 366 | } 367 | ], 368 | "source": [ 369 | "bar.render_notebook()" 370 | ] 371 | }, 372 | { 373 | "cell_type": "code", 374 | "execution_count": null, 375 | "metadata": {}, 376 | "outputs": [], 377 | "source": [] 378 | } 379 | ], 380 | "metadata": { 381 | "kernelspec": { 382 | "display_name": "Python 3", 383 | "language": "python", 384 | "name": "python3" 385 | }, 386 | "language_info": { 387 | "codemirror_mode": { 388 | "name": "ipython", 389 | "version": 3 390 | }, 391 | "file_extension": ".py", 392 | "mimetype": "text/x-python", 393 | "name": "python", 394 | "nbconvert_exporter": "python", 395 | "pygments_lexer": "ipython3", 396 | "version": "3.7.6" 397 | } 398 | }, 399 | "nbformat": 4, 400 | "nbformat_minor": 4 401 | } 402 | -------------------------------------------------------------------------------- /.ipynb_checkpoints/05. Python绘制饼图分析北京天气-checkpoint.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [], 3 | "metadata": {}, 4 | "nbformat": 4, 5 | "nbformat_minor": 4 6 | } 7 | -------------------------------------------------------------------------------- /.ipynb_checkpoints/09. Python绘制仪表盘图直观展示目标完成进度-checkpoint.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "## Python绘制仪表盘图直观展示目标完成进度" 8 | ] 9 | }, 10 | { 11 | "cell_type": "markdown", 12 | "metadata": {}, 13 | "source": [ 14 | "仪表盘(Gauge): \n", 15 | "* BI仪表盘的标配大图(business intelligence dashboard,BI dashboard)\n", 16 | "* 通过百分比指针,直观的展示目标的完成进度,比如收入/营业额目标进度" 17 | ] 18 | }, 19 | { 20 | "cell_type": "code", 21 | "execution_count": 1, 22 | "metadata": {}, 23 | "outputs": [], 24 | "source": [ 25 | "import pyecharts" 26 | ] 27 | }, 28 | { 29 | "cell_type": "code", 30 | "execution_count": 2, 31 | "metadata": {}, 32 | "outputs": [ 33 | { 34 | "data": { 35 | "text/plain": [ 36 | "'1.7.1'" 37 | ] 38 | }, 39 | "execution_count": 2, 40 | "metadata": {}, 41 | "output_type": "execute_result" 42 | } 43 | ], 44 | "source": [ 45 | "pyecharts.__version__" 46 | ] 47 | }, 48 | { 49 | "cell_type": "code", 50 | "execution_count": 3, 51 | "metadata": {}, 52 | "outputs": [], 53 | "source": [ 54 | "from pyecharts import options as opts\n", 55 | "from pyecharts.charts import Gauge" 56 | ] 57 | }, 58 | { 59 | "cell_type": "markdown", 60 | "metadata": {}, 61 | "source": [ 62 | "### 1. 绘制单指针仪表盘" 63 | ] 64 | }, 65 | { 66 | "cell_type": "code", 67 | "execution_count": 27, 68 | "metadata": {}, 69 | "outputs": [], 70 | "source": [ 71 | "gauge = (\n", 72 | " Gauge()\n", 73 | " .add(\"业务指标\", [(\"收入完成率\", 87.8)])\n", 74 | " .set_global_opts(title_opts=opts.TitleOpts(title=\"收入完成率\"))\n", 75 | ")" 76 | ] 77 | }, 78 | { 79 | "cell_type": "code", 80 | "execution_count": 28, 81 | "metadata": {}, 82 | "outputs": [ 83 | { 84 | "data": { 85 | "text/html": [ 86 | "\n", 87 | "\n", 94 | "\n", 95 | "
\n", 96 | "\n", 97 | "\n" 203 | ], 204 | "text/plain": [ 205 | "" 206 | ] 207 | }, 208 | "execution_count": 28, 209 | "metadata": {}, 210 | "output_type": "execute_result" 211 | } 212 | ], 213 | "source": [ 214 | "gauge.render_notebook()" 215 | ] 216 | }, 217 | { 218 | "cell_type": "markdown", 219 | "metadata": {}, 220 | "source": [ 221 | "### 2. 绘制多指针仪表盘" 222 | ] 223 | }, 224 | { 225 | "cell_type": "code", 226 | "execution_count": 39, 227 | "metadata": {}, 228 | "outputs": [], 229 | "source": [ 230 | "gauge = (\n", 231 | " Gauge()\n", 232 | " .add(\"业务指标\", [(\"上衣营业额\", 90.5), (\"裤子营业额\", 39.4), (\"鞋子营业额\", 15.8)])\n", 233 | " .set_global_opts(title_opts=opts.TitleOpts(title=\"收入完成率\"))\n", 234 | ")" 235 | ] 236 | }, 237 | { 238 | "cell_type": "code", 239 | "execution_count": 40, 240 | "metadata": {}, 241 | "outputs": [ 242 | { 243 | "data": { 244 | "text/html": [ 245 | "\n", 246 | "\n", 253 | "\n", 254 | "
\n", 255 | "\n", 256 | "\n" 370 | ], 371 | "text/plain": [ 372 | "" 373 | ] 374 | }, 375 | "execution_count": 40, 376 | "metadata": {}, 377 | "output_type": "execute_result" 378 | } 379 | ], 380 | "source": [ 381 | "gauge.render_notebook()" 382 | ] 383 | }, 384 | { 385 | "cell_type": "code", 386 | "execution_count": null, 387 | "metadata": {}, 388 | "outputs": [], 389 | "source": [] 390 | } 391 | ], 392 | "metadata": { 393 | "kernelspec": { 394 | "display_name": "Python 3", 395 | "language": "python", 396 | "name": "python3" 397 | }, 398 | "language_info": { 399 | "codemirror_mode": { 400 | "name": "ipython", 401 | "version": 3 402 | }, 403 | "file_extension": ".py", 404 | "mimetype": "text/x-python", 405 | "name": "python", 406 | "nbconvert_exporter": "python", 407 | "pygments_lexer": "ipython3", 408 | "version": "3.7.6" 409 | } 410 | }, 411 | "nbformat": 4, 412 | "nbformat_minor": 4 413 | } 414 | -------------------------------------------------------------------------------- /.ipynb_checkpoints/11. Python绘制小提琴图-checkpoint.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [], 3 | "metadata": {}, 4 | "nbformat": 4, 5 | "nbformat_minor": 4 6 | } 7 | -------------------------------------------------------------------------------- /.ipynb_checkpoints/12. Python绘制中国地图和城市图表-checkpoint.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "## Python绘制中国地图和城市图表" 8 | ] 9 | }, 10 | { 11 | "cell_type": "code", 12 | "execution_count": 1, 13 | "metadata": {}, 14 | "outputs": [], 15 | "source": [ 16 | "import pyecharts" 17 | ] 18 | }, 19 | { 20 | "cell_type": "code", 21 | "execution_count": 2, 22 | "metadata": {}, 23 | "outputs": [ 24 | { 25 | "data": { 26 | "text/plain": [ 27 | "'1.7.1'" 28 | ] 29 | }, 30 | "execution_count": 2, 31 | "metadata": {}, 32 | "output_type": "execute_result" 33 | } 34 | ], 35 | "source": [ 36 | "pyecharts.__version__" 37 | ] 38 | }, 39 | { 40 | "cell_type": "code", 41 | "execution_count": null, 42 | "metadata": {}, 43 | "outputs": [], 44 | "source": [ 45 | "from pyecharts import options as opts\n", 46 | "from pyecharts.charts import Map" 47 | ] 48 | }, 49 | { 50 | "cell_type": "markdown", 51 | "metadata": {}, 52 | "source": [ 53 | "### 1. 绘制中国城市数据图表" 54 | ] 55 | }, 56 | { 57 | "cell_type": "code", 58 | "execution_count": null, 59 | "metadata": {}, 60 | "outputs": [], 61 | "source": [ 62 | "# 2019全国各省人口数量排名,前10个\n", 63 | "province_population = [\n", 64 | " [\"广东\", 11169],\n", 65 | " [\"山东\", 10005.83],\n", 66 | " [\"河南\", 9559.13],\n", 67 | " [\"四川\", 8302],\n", 68 | " [\"江苏\", 8029.3],\n", 69 | " [\"河北\", 7519.52],\n", 70 | " [\"湖南\", 6860.2],\n", 71 | " [\"安徽\", 6254.8],\n", 72 | " [\"湖北\", 5902],\n", 73 | " [\"浙江\", 5657]\n", 74 | "]" 75 | ] 76 | }, 77 | { 78 | "cell_type": "code", 79 | "execution_count": null, 80 | "metadata": {}, 81 | "outputs": [], 82 | "source": [ 83 | "map = (\n", 84 | " Map()\n", 85 | " .add(\"各省人口数量\", province_population, \"china\")\n", 86 | " .set_global_opts(\n", 87 | " title_opts=opts.TitleOpts(title=\"2019全国各省人口数量排名\"),\n", 88 | " visualmap_opts=opts.VisualMapOpts(max_=12000),\n", 89 | " )\n", 90 | ")\n", 91 | "map.render_notebook()" 92 | ] 93 | }, 94 | { 95 | "cell_type": "markdown", 96 | "metadata": {}, 97 | "source": [ 98 | "### 2. 绘制具体城市数据" 99 | ] 100 | }, 101 | { 102 | "cell_type": "code", 103 | "execution_count": null, 104 | "metadata": {}, 105 | "outputs": [], 106 | "source": [ 107 | "# 2019年北京各区人口数量,前5个\n", 108 | "beijing_district = [\n", 109 | " [\"朝阳区\", 395.5],\n", 110 | " [\"海淀区\", 369.4],\n", 111 | " [\"丰台区\", 232.4],\n", 112 | " [\"昌平区\", 196.3],\n", 113 | " [\"大兴区\", 156.2],\n", 114 | " [\"通州区\", 137.8],\n", 115 | " [\"西城区\", 129.8],\n", 116 | "]" 117 | ] 118 | }, 119 | { 120 | "cell_type": "code", 121 | "execution_count": null, 122 | "metadata": {}, 123 | "outputs": [], 124 | "source": [ 125 | "map = (\n", 126 | " Map()\n", 127 | " .add(\"各区人口\", beijing_district, \"北京\")\n", 128 | " .set_global_opts(\n", 129 | " title_opts=opts.TitleOpts(title=\"2019年北京各区人口数量\"), \n", 130 | " visualmap_opts=opts.VisualMapOpts(max_=400)\n", 131 | " )\n", 132 | ")\n", 133 | "map.render_notebook()" 134 | ] 135 | }, 136 | { 137 | "cell_type": "code", 138 | "execution_count": null, 139 | "metadata": {}, 140 | "outputs": [], 141 | "source": [] 142 | } 143 | ], 144 | "metadata": { 145 | "kernelspec": { 146 | "display_name": "Python 3", 147 | "language": "python", 148 | "name": "python3" 149 | }, 150 | "language_info": { 151 | "codemirror_mode": { 152 | "name": "ipython", 153 | "version": 3 154 | }, 155 | "file_extension": ".py", 156 | "mimetype": "text/x-python", 157 | "name": "python", 158 | "nbconvert_exporter": "python", 159 | "pygments_lexer": "ipython3", 160 | "version": "3.7.6" 161 | } 162 | }, 163 | "nbformat": 4, 164 | "nbformat_minor": 4 165 | } 166 | -------------------------------------------------------------------------------- /.ipynb_checkpoints/13. Python绘制预算开销雷达图-checkpoint.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [], 3 | "metadata": {}, 4 | "nbformat": 4, 5 | "nbformat_minor": 4 6 | } 7 | -------------------------------------------------------------------------------- /.ipynb_checkpoints/test-checkpoint.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [], 3 | "metadata": {}, 4 | "nbformat": 4, 5 | "nbformat_minor": 4 6 | } 7 | -------------------------------------------------------------------------------- /01. Python读取Excel绘制柱状图.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "## Python读取Excel绘制柱状图" 8 | ] 9 | }, 10 | { 11 | "cell_type": "markdown", 12 | "metadata": {}, 13 | "source": [ 14 | "### 读取Excel数据" 15 | ] 16 | }, 17 | { 18 | "cell_type": "code", 19 | "execution_count": 1, 20 | "metadata": {}, 21 | "outputs": [], 22 | "source": [ 23 | "import pandas as pd" 24 | ] 25 | }, 26 | { 27 | "cell_type": "code", 28 | "execution_count": 2, 29 | "metadata": {}, 30 | "outputs": [], 31 | "source": [ 32 | "df = pd.read_excel(\"./服装销售数据.xlsx\")" 33 | ] 34 | }, 35 | { 36 | "cell_type": "code", 37 | "execution_count": 3, 38 | "metadata": {}, 39 | "outputs": [ 40 | { 41 | "data": { 42 | "text/html": [ 43 | "
\n", 44 | "\n", 57 | "\n", 58 | " \n", 59 | " \n", 60 | " \n", 61 | " \n", 62 | " \n", 63 | " \n", 64 | " \n", 65 | " \n", 66 | " \n", 67 | " \n", 68 | " \n", 69 | " \n", 70 | " \n", 71 | " \n", 72 | " \n", 73 | " \n", 74 | " \n", 75 | " \n", 76 | " \n", 77 | " \n", 78 | " \n", 79 | " \n", 80 | " \n", 81 | " \n", 82 | " \n", 83 | " \n", 84 | " \n", 85 | " \n", 86 | " \n", 87 | " \n", 88 | " \n", 89 | " \n", 90 | " \n", 91 | " \n", 92 | " \n", 93 | " \n", 94 | " \n", 95 | " \n", 96 | " \n", 97 | " \n", 98 | " \n", 99 | " \n", 100 | " \n", 101 | " \n", 102 | " \n", 103 | " \n", 104 | " \n", 105 | " \n", 106 | " \n", 107 | " \n", 108 | " \n", 109 | " \n", 110 | "
商品商家A商家B
0衬衫42123
1毛衣7835
2领带13526
3裤子2572
4风衣13528
5高跟鞋5826
6袜子43101
\n", 111 | "
" 112 | ], 113 | "text/plain": [ 114 | " 商品 商家A 商家B\n", 115 | "0 衬衫 42 123\n", 116 | "1 毛衣 78 35\n", 117 | "2 领带 135 26\n", 118 | "3 裤子 25 72\n", 119 | "4 风衣 135 28\n", 120 | "5 高跟鞋 58 26\n", 121 | "6 袜子 43 101" 122 | ] 123 | }, 124 | "execution_count": 3, 125 | "metadata": {}, 126 | "output_type": "execute_result" 127 | } 128 | ], 129 | "source": [ 130 | "df" 131 | ] 132 | }, 133 | { 134 | "cell_type": "markdown", 135 | "metadata": {}, 136 | "source": [ 137 | "### 绘制柱状图" 138 | ] 139 | }, 140 | { 141 | "cell_type": "code", 142 | "execution_count": 4, 143 | "metadata": {}, 144 | "outputs": [], 145 | "source": [ 146 | "from pyecharts import options as opts\n", 147 | "from pyecharts.charts import Bar" 148 | ] 149 | }, 150 | { 151 | "cell_type": "code", 152 | "execution_count": 5, 153 | "metadata": {}, 154 | "outputs": [], 155 | "source": [ 156 | "bar = (\n", 157 | " Bar()\n", 158 | " .add_xaxis(df[\"商品\"].to_list())\n", 159 | " .add_yaxis(\"商家A\", df[\"商家A\"].to_list())\n", 160 | " .add_yaxis(\"商家B\", df[\"商家B\"].to_list())\n", 161 | " .set_global_opts(title_opts=opts.TitleOpts(title=\"商品销量对比图\"))\n", 162 | ")" 163 | ] 164 | }, 165 | { 166 | "cell_type": "code", 167 | "execution_count": 6, 168 | "metadata": {}, 169 | "outputs": [ 170 | { 171 | "data": { 172 | "text/html": [ 173 | "\n", 174 | "\n", 181 | "\n", 182 | "
\n", 183 | "\n", 184 | "\n" 358 | ], 359 | "text/plain": [ 360 | "" 361 | ] 362 | }, 363 | "execution_count": 6, 364 | "metadata": {}, 365 | "output_type": "execute_result" 366 | } 367 | ], 368 | "source": [ 369 | "bar.render_notebook()" 370 | ] 371 | }, 372 | { 373 | "cell_type": "code", 374 | "execution_count": null, 375 | "metadata": {}, 376 | "outputs": [], 377 | "source": [] 378 | } 379 | ], 380 | "metadata": { 381 | "kernelspec": { 382 | "display_name": "Python 3", 383 | "language": "python", 384 | "name": "python3" 385 | }, 386 | "language_info": { 387 | "codemirror_mode": { 388 | "name": "ipython", 389 | "version": 3 390 | }, 391 | "file_extension": ".py", 392 | "mimetype": "text/x-python", 393 | "name": "python", 394 | "nbconvert_exporter": "python", 395 | "pygments_lexer": "ipython3", 396 | "version": "3.7.6" 397 | } 398 | }, 399 | "nbformat": 4, 400 | "nbformat_minor": 4 401 | } 402 | -------------------------------------------------------------------------------- /09. Python绘制仪表盘图直观展示目标完成进度.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "## Python绘制仪表盘图直观展示目标完成进度" 8 | ] 9 | }, 10 | { 11 | "cell_type": "markdown", 12 | "metadata": {}, 13 | "source": [ 14 | "仪表盘(Gauge): \n", 15 | "* BI仪表盘的标配大图(business intelligence dashboard,BI dashboard)\n", 16 | "* 通过百分比指针,直观的展示目标的完成进度,比如收入/营业额目标进度" 17 | ] 18 | }, 19 | { 20 | "cell_type": "code", 21 | "execution_count": 1, 22 | "metadata": {}, 23 | "outputs": [], 24 | "source": [ 25 | "import pyecharts" 26 | ] 27 | }, 28 | { 29 | "cell_type": "code", 30 | "execution_count": 2, 31 | "metadata": {}, 32 | "outputs": [ 33 | { 34 | "data": { 35 | "text/plain": [ 36 | "'1.7.1'" 37 | ] 38 | }, 39 | "execution_count": 2, 40 | "metadata": {}, 41 | "output_type": "execute_result" 42 | } 43 | ], 44 | "source": [ 45 | "pyecharts.__version__" 46 | ] 47 | }, 48 | { 49 | "cell_type": "code", 50 | "execution_count": 3, 51 | "metadata": {}, 52 | "outputs": [], 53 | "source": [ 54 | "from pyecharts import options as opts\n", 55 | "from pyecharts.charts import Gauge" 56 | ] 57 | }, 58 | { 59 | "cell_type": "markdown", 60 | "metadata": {}, 61 | "source": [ 62 | "### 1. 绘制单指针仪表盘" 63 | ] 64 | }, 65 | { 66 | "cell_type": "code", 67 | "execution_count": 4, 68 | "metadata": {}, 69 | "outputs": [], 70 | "source": [ 71 | "gauge = (\n", 72 | " Gauge()\n", 73 | " .add(\"业务指标\", [(\"收入完成率\", 87.8)])\n", 74 | " .set_global_opts(title_opts=opts.TitleOpts(title=\"收入完成率\"))\n", 75 | ")" 76 | ] 77 | }, 78 | { 79 | "cell_type": "code", 80 | "execution_count": 5, 81 | "metadata": {}, 82 | "outputs": [ 83 | { 84 | "data": { 85 | "text/html": [ 86 | "\n", 87 | "\n", 94 | "\n", 95 | "
\n", 96 | "\n", 97 | "\n" 203 | ], 204 | "text/plain": [ 205 | "" 206 | ] 207 | }, 208 | "execution_count": 5, 209 | "metadata": {}, 210 | "output_type": "execute_result" 211 | } 212 | ], 213 | "source": [ 214 | "gauge.render_notebook()" 215 | ] 216 | }, 217 | { 218 | "cell_type": "markdown", 219 | "metadata": {}, 220 | "source": [ 221 | "### 2. 绘制多指针仪表盘" 222 | ] 223 | }, 224 | { 225 | "cell_type": "code", 226 | "execution_count": 6, 227 | "metadata": {}, 228 | "outputs": [], 229 | "source": [ 230 | "gauge = (\n", 231 | " Gauge()\n", 232 | " .add(\"业务指标\", [(\"上衣营业额\", 90.5), (\"裤子营业额\", 39.4), (\"鞋子营业额\", 15.8)])\n", 233 | " .set_global_opts(title_opts=opts.TitleOpts(title=\"收入完成率\"))\n", 234 | ")" 235 | ] 236 | }, 237 | { 238 | "cell_type": "code", 239 | "execution_count": 8, 240 | "metadata": {}, 241 | "outputs": [ 242 | { 243 | "data": { 244 | "text/html": [ 245 | "\n", 246 | "\n", 253 | "\n", 254 | "
\n", 255 | "\n", 256 | "\n" 370 | ], 371 | "text/plain": [ 372 | "" 373 | ] 374 | }, 375 | "execution_count": 8, 376 | "metadata": {}, 377 | "output_type": "execute_result" 378 | } 379 | ], 380 | "source": [ 381 | "gauge.render_notebook()" 382 | ] 383 | }, 384 | { 385 | "cell_type": "code", 386 | "execution_count": null, 387 | "metadata": {}, 388 | "outputs": [], 389 | "source": [] 390 | } 391 | ], 392 | "metadata": { 393 | "kernelspec": { 394 | "display_name": "Python 3", 395 | "language": "python", 396 | "name": "python3" 397 | }, 398 | "language_info": { 399 | "codemirror_mode": { 400 | "name": "ipython", 401 | "version": 3 402 | }, 403 | "file_extension": ".py", 404 | "mimetype": "text/x-python", 405 | "name": "python", 406 | "nbconvert_exporter": "python", 407 | "pygments_lexer": "ipython3", 408 | "version": "3.7.6" 409 | } 410 | }, 411 | "nbformat": 4, 412 | "nbformat_minor": 4 413 | } 414 | -------------------------------------------------------------------------------- /12. Python绘制中国地图和城市图表.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "## Python绘制中国地图和城市图表" 8 | ] 9 | }, 10 | { 11 | "cell_type": "code", 12 | "execution_count": 1, 13 | "metadata": {}, 14 | "outputs": [], 15 | "source": [ 16 | "from pyecharts import options as opts\n", 17 | "from pyecharts.charts import Map" 18 | ] 19 | }, 20 | { 21 | "cell_type": "markdown", 22 | "metadata": {}, 23 | "source": [ 24 | "### 1. 绘制中国城市数据图表" 25 | ] 26 | }, 27 | { 28 | "cell_type": "code", 29 | "execution_count": 2, 30 | "metadata": {}, 31 | "outputs": [], 32 | "source": [ 33 | "# 2019全国各省人口数量排名,单位万,前10个\n", 34 | "province_population = [\n", 35 | " [\"广东\", 11169],\n", 36 | " [\"山东\", 10005.83],\n", 37 | " [\"河南\", 9559.13],\n", 38 | " [\"四川\", 8302],\n", 39 | " [\"江苏\", 8029.3],\n", 40 | " [\"河北\", 7519.52],\n", 41 | " [\"湖南\", 6860.2],\n", 42 | " [\"安徽\", 6254.8],\n", 43 | " [\"湖北\", 5902],\n", 44 | " [\"浙江\", 5657]\n", 45 | "]" 46 | ] 47 | }, 48 | { 49 | "cell_type": "code", 50 | "execution_count": 3, 51 | "metadata": {}, 52 | "outputs": [ 53 | { 54 | "data": { 55 | "text/html": [ 56 | "\n", 57 | "\n", 64 | "\n", 65 | "
\n", 66 | "\n", 67 | "\n" 223 | ], 224 | "text/plain": [ 225 | "" 226 | ] 227 | }, 228 | "execution_count": 3, 229 | "metadata": {}, 230 | "output_type": "execute_result" 231 | } 232 | ], 233 | "source": [ 234 | "map = (\n", 235 | " Map()\n", 236 | " .add(\"各省人口数量\", province_population, \"china\")\n", 237 | " .set_global_opts(\n", 238 | " title_opts=opts.TitleOpts(title=\"2019全国各省人口数量排名\"),\n", 239 | " visualmap_opts=opts.VisualMapOpts(max_=12000),\n", 240 | " )\n", 241 | ")\n", 242 | "map.render_notebook()" 243 | ] 244 | }, 245 | { 246 | "cell_type": "markdown", 247 | "metadata": {}, 248 | "source": [ 249 | "### 2. 绘制具体城市数据" 250 | ] 251 | }, 252 | { 253 | "cell_type": "code", 254 | "execution_count": 4, 255 | "metadata": {}, 256 | "outputs": [], 257 | "source": [ 258 | "# 2019年北京各区人口数量,前7个\n", 259 | "beijing_district = [\n", 260 | " [\"朝阳区\", 395.5],\n", 261 | " [\"海淀区\", 369.4],\n", 262 | " [\"丰台区\", 232.4],\n", 263 | " [\"昌平区\", 196.3],\n", 264 | " [\"大兴区\", 156.2],\n", 265 | " [\"通州区\", 137.8],\n", 266 | " [\"西城区\", 129.8],\n", 267 | "]" 268 | ] 269 | }, 270 | { 271 | "cell_type": "code", 272 | "execution_count": 5, 273 | "metadata": {}, 274 | "outputs": [ 275 | { 276 | "data": { 277 | "text/html": [ 278 | "\n", 279 | "\n", 286 | "\n", 287 | "
\n", 288 | "\n", 289 | "\n" 433 | ], 434 | "text/plain": [ 435 | "" 436 | ] 437 | }, 438 | "execution_count": 5, 439 | "metadata": {}, 440 | "output_type": "execute_result" 441 | } 442 | ], 443 | "source": [ 444 | "map = (\n", 445 | " Map()\n", 446 | " .add(\"各区人口\", beijing_district, \"北京\")\n", 447 | " .set_global_opts(\n", 448 | " title_opts=opts.TitleOpts(title=\"2019年北京各区人口数量\"), \n", 449 | " visualmap_opts=opts.VisualMapOpts(max_=400)\n", 450 | " )\n", 451 | ")\n", 452 | "map.render_notebook()" 453 | ] 454 | }, 455 | { 456 | "cell_type": "code", 457 | "execution_count": null, 458 | "metadata": {}, 459 | "outputs": [], 460 | "source": [] 461 | } 462 | ], 463 | "metadata": { 464 | "kernelspec": { 465 | "display_name": "Python 3", 466 | "language": "python", 467 | "name": "python3" 468 | }, 469 | "language_info": { 470 | "codemirror_mode": { 471 | "name": "ipython", 472 | "version": 3 473 | }, 474 | "file_extension": ".py", 475 | "mimetype": "text/x-python", 476 | "name": "python", 477 | "nbconvert_exporter": "python", 478 | "pygments_lexer": "ipython3", 479 | "version": "3.7.6" 480 | } 481 | }, 482 | "nbformat": 4, 483 | "nbformat_minor": 4 484 | } 485 | -------------------------------------------------------------------------------- /13. Python绘制预算开销雷达图.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "## Python绘制预算开销雷达图" 8 | ] 9 | }, 10 | { 11 | "cell_type": "markdown", 12 | "metadata": {}, 13 | "source": [ 14 | "***雷达图(Radar):*** \n", 15 | "* 又称为蜘蛛图、极地图、星图\n", 16 | "* 从同一点开始的轴上表示的两个或更多个变量的二维图表的形式显示**多变量数据**的图形方法。\n", 17 | "\n", 18 | "雷达图主要应用于企业经营状况——收益性、生产性、流动性、安全性和成长性的评价。\n", 19 | "\n", 20 | "***缺点:*** \n", 21 | "如果多边形过多,就会显得非常混乱,所以一般展示一到两个变量多边形" 22 | ] 23 | }, 24 | { 25 | "cell_type": "code", 26 | "execution_count": 1, 27 | "metadata": {}, 28 | "outputs": [], 29 | "source": [ 30 | "from pyecharts import options as opts\n", 31 | "from pyecharts.charts import Radar" 32 | ] 33 | }, 34 | { 35 | "cell_type": "markdown", 36 | "metadata": {}, 37 | "source": [ 38 | "### 1. 数据统计结果" 39 | ] 40 | }, 41 | { 42 | "cell_type": "code", 43 | "execution_count": 2, 44 | "metadata": {}, 45 | "outputs": [], 46 | "source": [ 47 | "# 部门列表\n", 48 | "departments = ['销售', '管理', '信息技术', '客服', '研发', '市场']" 49 | ] 50 | }, 51 | { 52 | "cell_type": "code", 53 | "execution_count": 3, 54 | "metadata": {}, 55 | "outputs": [], 56 | "source": [ 57 | "# 容忍的最大支出\n", 58 | "max_cost_threshold = [6500, 16000, 30000, 38000, 52000, 25000]" 59 | ] 60 | }, 61 | { 62 | "cell_type": "code", 63 | "execution_count": 4, 64 | "metadata": {}, 65 | "outputs": [], 66 | "source": [ 67 | "# 预算分配\n", 68 | "budget_allocation = [4300, 10000, 28000, 35000, 50000, 19000]" 69 | ] 70 | }, 71 | { 72 | "cell_type": "code", 73 | "execution_count": 5, 74 | "metadata": {}, 75 | "outputs": [], 76 | "source": [ 77 | "# 实际开销\n", 78 | "actual_cost = [5000, 14000, 28000, 31000, 42000, 21000]" 79 | ] 80 | }, 81 | { 82 | "cell_type": "markdown", 83 | "metadata": {}, 84 | "source": [ 85 | "### 2. 绘制雷达图" 86 | ] 87 | }, 88 | { 89 | "cell_type": "code", 90 | "execution_count": 6, 91 | "metadata": {}, 92 | "outputs": [], 93 | "source": [ 94 | "# 设置雷达图的边缘的最大值\n", 95 | "schema = []\n", 96 | "for dept, max_cost in zip(departments, max_cost_threshold):\n", 97 | " schema.append(opts.RadarIndicatorItem(name=dept, max_=max_cost))" 98 | ] 99 | }, 100 | { 101 | "cell_type": "code", 102 | "execution_count": 7, 103 | "metadata": {}, 104 | "outputs": [ 105 | { 106 | "data": { 107 | "text/plain": [ 108 | "[,\n", 109 | " ,\n", 110 | " ,\n", 111 | " ,\n", 112 | " ,\n", 113 | " ]" 114 | ] 115 | }, 116 | "execution_count": 7, 117 | "metadata": {}, 118 | "output_type": "execute_result" 119 | } 120 | ], 121 | "source": [ 122 | "schema" 123 | ] 124 | }, 125 | { 126 | "cell_type": "code", 127 | "execution_count": 8, 128 | "metadata": {}, 129 | "outputs": [ 130 | { 131 | "data": { 132 | "text/html": [ 133 | "\n", 134 | "\n", 141 | "\n", 142 | "
\n", 143 | "\n", 144 | "\n" 355 | ], 356 | "text/plain": [ 357 | "" 358 | ] 359 | }, 360 | "execution_count": 8, 361 | "metadata": {}, 362 | "output_type": "execute_result" 363 | } 364 | ], 365 | "source": [ 366 | "radar = (\n", 367 | " Radar()\n", 368 | " .add_schema(schema)\n", 369 | " .add(\"预算分配\", [budget_allocation], linestyle_opts=opts.LineStyleOpts(color=\"#FF0000\"))\n", 370 | " .add(\"实际开销\", [actual_cost], linestyle_opts=opts.LineStyleOpts(color=\"#0000FF\"))\n", 371 | " .set_series_opts(label_opts=opts.LabelOpts(is_show=False))\n", 372 | " .set_global_opts(\n", 373 | " #legend_opts=opts.LegendOpts(selected_mode=\"single\"),\n", 374 | " title_opts=opts.TitleOpts(title=\"各部门预算与开销\"),\n", 375 | " )\n", 376 | ")\n", 377 | "\n", 378 | "radar.render_notebook()" 379 | ] 380 | }, 381 | { 382 | "cell_type": "code", 383 | "execution_count": null, 384 | "metadata": {}, 385 | "outputs": [], 386 | "source": [] 387 | } 388 | ], 389 | "metadata": { 390 | "kernelspec": { 391 | "display_name": "Python 3", 392 | "language": "python", 393 | "name": "python3" 394 | }, 395 | "language_info": { 396 | "codemirror_mode": { 397 | "name": "ipython", 398 | "version": 3 399 | }, 400 | "file_extension": ".py", 401 | "mimetype": "text/x-python", 402 | "name": "python", 403 | "nbconvert_exporter": "python", 404 | "pygments_lexer": "ipython3", 405 | "version": "3.7.6" 406 | } 407 | }, 408 | "nbformat": 4, 409 | "nbformat_minor": 4 410 | } 411 | -------------------------------------------------------------------------------- /16. Python绘制时间线轮播多图.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "## Python绘制时间线轮播多图" 8 | ] 9 | }, 10 | { 11 | "cell_type": "code", 12 | "execution_count": 1, 13 | "metadata": {}, 14 | "outputs": [], 15 | "source": [ 16 | "import pandas as pd\n", 17 | "from pyecharts import options as opts\n", 18 | "from pyecharts.charts import Pie, Bar, Timeline" 19 | ] 20 | }, 21 | { 22 | "cell_type": "markdown", 23 | "metadata": {}, 24 | "source": [ 25 | "### 1. 读取北京2019年天气数据" 26 | ] 27 | }, 28 | { 29 | "cell_type": "code", 30 | "execution_count": 2, 31 | "metadata": {}, 32 | "outputs": [ 33 | { 34 | "data": { 35 | "text/html": [ 36 | "
\n", 37 | "\n", 50 | "\n", 51 | " \n", 52 | " \n", 53 | " \n", 54 | " \n", 55 | " \n", 56 | " \n", 57 | " \n", 58 | " \n", 59 | " \n", 60 | " \n", 61 | " \n", 62 | " \n", 63 | " \n", 64 | " \n", 65 | " \n", 66 | " \n", 67 | " \n", 68 | " \n", 69 | " \n", 70 | " \n", 71 | " \n", 72 | " \n", 73 | " \n", 74 | " \n", 75 | " \n", 76 | " \n", 77 | " \n", 78 | " \n", 79 | " \n", 80 | " \n", 81 | " \n", 82 | " \n", 83 | " \n", 84 | " \n", 85 | " \n", 86 | " \n", 87 | " \n", 88 | " \n", 89 | " \n", 90 | " \n", 91 | " \n", 92 | " \n", 93 | " \n", 94 | " \n", 95 | " \n", 96 | " \n", 97 | " \n", 98 | " \n", 99 | " \n", 100 | " \n", 101 | " \n", 102 | " \n", 103 | "
ymdbWenduyWendutianqifengxiangfengliaqiaqiInfoaqiLevel
02019-01-011℃-10℃晴~多云西北风1级562
12019-01-021℃-9℃多云东北风1级602
22019-01-032℃-7℃东北风1级165中度污染4
\n", 104 | "
" 105 | ], 106 | "text/plain": [ 107 | " ymd bWendu yWendu tianqi fengxiang fengli aqi aqiInfo aqiLevel\n", 108 | "0 2019-01-01 1℃ -10℃ 晴~多云 西北风 1级 56 良 2\n", 109 | "1 2019-01-02 1℃ -9℃ 多云 东北风 1级 60 良 2\n", 110 | "2 2019-01-03 2℃ -7℃ 霾 东北风 1级 165 中度污染 4" 111 | ] 112 | }, 113 | "execution_count": 2, 114 | "metadata": {}, 115 | "output_type": "execute_result" 116 | } 117 | ], 118 | "source": [ 119 | "df = pd.read_csv(\"./datas/beijing_tianqi/beijing_tianqi_2019.csv\")\n", 120 | "df.head(3)" 121 | ] 122 | }, 123 | { 124 | "cell_type": "code", 125 | "execution_count": 3, 126 | "metadata": {}, 127 | "outputs": [ 128 | { 129 | "data": { 130 | "text/html": [ 131 | "
\n", 132 | "\n", 145 | "\n", 146 | " \n", 147 | " \n", 148 | " \n", 149 | " \n", 150 | " \n", 151 | " \n", 152 | " \n", 153 | " \n", 154 | " \n", 155 | " \n", 156 | " \n", 157 | " \n", 158 | " \n", 159 | " \n", 160 | " \n", 161 | " \n", 162 | " \n", 163 | " \n", 164 | " \n", 165 | " \n", 166 | " \n", 167 | " \n", 168 | " \n", 169 | " \n", 170 | " \n", 171 | " \n", 172 | " \n", 173 | " \n", 174 | " \n", 175 | " \n", 176 | " \n", 177 | " \n", 178 | " \n", 179 | " \n", 180 | " \n", 181 | " \n", 182 | " \n", 183 | " \n", 184 | " \n", 185 | " \n", 186 | " \n", 187 | " \n", 188 | " \n", 189 | " \n", 190 | " \n", 191 | " \n", 192 | " \n", 193 | " \n", 194 | " \n", 195 | " \n", 196 | " \n", 197 | " \n", 198 | " \n", 199 | " \n", 200 | " \n", 201 | " \n", 202 | "
ymdbWenduyWendutianqifengxiangfengliaqiaqiInfoaqiLevelmonth
02019-01-011℃-10℃晴~多云西北风1级5621
12019-01-021℃-9℃多云东北风1级6021
22019-01-032℃-7℃东北风1级165中度污染41
\n", 203 | "
" 204 | ], 205 | "text/plain": [ 206 | " ymd bWendu yWendu tianqi fengxiang fengli aqi aqiInfo aqiLevel \\\n", 207 | "0 2019-01-01 1℃ -10℃ 晴~多云 西北风 1级 56 良 2 \n", 208 | "1 2019-01-02 1℃ -9℃ 多云 东北风 1级 60 良 2 \n", 209 | "2 2019-01-03 2℃ -7℃ 霾 东北风 1级 165 中度污染 4 \n", 210 | "\n", 211 | " month \n", 212 | "0 1 \n", 213 | "1 1 \n", 214 | "2 1 " 215 | ] 216 | }, 217 | "execution_count": 3, 218 | "metadata": {}, 219 | "output_type": "execute_result" 220 | } 221 | ], 222 | "source": [ 223 | "df[\"month\"] = pd.to_datetime(df[\"ymd\"]).dt.month\n", 224 | "df.head(3)" 225 | ] 226 | }, 227 | { 228 | "cell_type": "code", 229 | "execution_count": 4, 230 | "metadata": {}, 231 | "outputs": [ 232 | { 233 | "data": { 234 | "text/html": [ 235 | "
\n", 236 | "\n", 249 | "\n", 250 | " \n", 251 | " \n", 252 | " \n", 253 | " \n", 254 | " \n", 255 | " \n", 256 | " \n", 257 | " \n", 258 | " \n", 259 | " \n", 260 | " \n", 261 | " \n", 262 | " \n", 263 | " \n", 264 | " \n", 265 | " \n", 266 | " \n", 267 | " \n", 268 | " \n", 269 | " \n", 270 | " \n", 271 | " \n", 272 | " \n", 273 | " \n", 274 | " \n", 275 | " \n", 276 | " \n", 277 | " \n", 278 | " \n", 279 | " \n", 280 | " \n", 281 | " \n", 282 | " \n", 283 | " \n", 284 | " \n", 285 | " \n", 286 | " \n", 287 | " \n", 288 | " \n", 289 | " \n", 290 | " \n", 291 | " \n", 292 | " \n", 293 | " \n", 294 | " \n", 295 | " \n", 296 | " \n", 297 | " \n", 298 | " \n", 299 | " \n", 300 | " \n", 301 | " \n", 302 | " \n", 303 | " \n", 304 | " \n", 305 | " \n", 306 | " \n", 307 | " \n", 308 | " \n", 309 | " \n", 310 | " \n", 311 | " \n", 312 | " \n", 313 | " \n", 314 | " \n", 315 | " \n", 316 | " \n", 317 | " \n", 318 | " \n", 319 | " \n", 320 | "
monthtianqicount
01多云9
11多云~晴1
2112
31晴~多云4
413
51霾~多云1
61霾~晴1
72多云9
82多云~晴3
92小雪~多云2
\n", 321 | "
" 322 | ], 323 | "text/plain": [ 324 | " month tianqi count\n", 325 | "0 1 多云 9\n", 326 | "1 1 多云~晴 1\n", 327 | "2 1 晴 12\n", 328 | "3 1 晴~多云 4\n", 329 | "4 1 霾 3\n", 330 | "5 1 霾~多云 1\n", 331 | "6 1 霾~晴 1\n", 332 | "7 2 多云 9\n", 333 | "8 2 多云~晴 3\n", 334 | "9 2 小雪~多云 2" 335 | ] 336 | }, 337 | "execution_count": 4, 338 | "metadata": {}, 339 | "output_type": "execute_result" 340 | } 341 | ], 342 | "source": [ 343 | "# 统计每个月份的每种天气出现次数\n", 344 | "df_agg = df.groupby([\"month\", \"tianqi\"]).size().reset_index()\n", 345 | "df_agg.columns = [\"month\", \"tianqi\", \"count\"]\n", 346 | "df_agg.head(10)" 347 | ] 348 | }, 349 | { 350 | "cell_type": "code", 351 | "execution_count": 5, 352 | "metadata": {}, 353 | "outputs": [ 354 | { 355 | "data": { 356 | "text/plain": [ 357 | "[['晴', 12],\n", 358 | " ['多云', 9],\n", 359 | " ['晴~多云', 4],\n", 360 | " ['霾', 3],\n", 361 | " ['多云~晴', 1],\n", 362 | " ['霾~多云', 1],\n", 363 | " ['霾~晴', 1]]" 364 | ] 365 | }, 366 | "execution_count": 5, 367 | "metadata": {}, 368 | "output_type": "execute_result" 369 | } 370 | ], 371 | "source": [ 372 | "# 怎样算出1月份的天气次数排名\n", 373 | "df_agg[df_agg[\"month\"]==1][[\"tianqi\", \"count\"]].sort_values(by=\"count\", ascending=False).values.tolist()" 374 | ] 375 | }, 376 | { 377 | "cell_type": "markdown", 378 | "metadata": {}, 379 | "source": [ 380 | "### 2. 按月变化-天气频率柱状图" 381 | ] 382 | }, 383 | { 384 | "cell_type": "code", 385 | "execution_count": null, 386 | "metadata": { 387 | "scrolled": false 388 | }, 389 | "outputs": [], 390 | "source": [ 391 | "timeline = Timeline()\n", 392 | "timeline.add_schema(play_interval=1000)\n", 393 | "for month in df_agg[\"month\"].unique():\n", 394 | " data = (\n", 395 | " df_agg[df_agg[\"month\"]==month][[\"tianqi\", \"count\"]]\n", 396 | " .sort_values(by=\"count\", ascending=True)\n", 397 | " .values.tolist()\n", 398 | " )\n", 399 | " \n", 400 | " # 绘制柱状图\n", 401 | " bar = Bar()\n", 402 | " \n", 403 | " # x轴是天气名称\n", 404 | " bar.add_xaxis([x[0] for x in data])\n", 405 | " # y轴是出现次数\n", 406 | " bar.add_yaxis(\"\", [x[1] for x in data])\n", 407 | " # 让柱状图横放\n", 408 | " bar.reversal_axis()\n", 409 | " bar.set_series_opts(label_opts=opts.LabelOpts(position=\"right\"))\n", 410 | " bar.set_global_opts(title_opts=opts.TitleOpts(title=\"北京每月天气变化\"))\n", 411 | " \n", 412 | " timeline.add(bar, f\"{month}月\")\n", 413 | " \n", 414 | "timeline.render_notebook()" 415 | ] 416 | }, 417 | { 418 | "cell_type": "code", 419 | "execution_count": null, 420 | "metadata": {}, 421 | "outputs": [], 422 | "source": [] 423 | }, 424 | { 425 | "cell_type": "code", 426 | "execution_count": null, 427 | "metadata": {}, 428 | "outputs": [], 429 | "source": [] 430 | }, 431 | { 432 | "cell_type": "code", 433 | "execution_count": null, 434 | "metadata": {}, 435 | "outputs": [], 436 | "source": [] 437 | }, 438 | { 439 | "cell_type": "code", 440 | "execution_count": null, 441 | "metadata": {}, 442 | "outputs": [], 443 | "source": [] 444 | }, 445 | { 446 | "cell_type": "code", 447 | "execution_count": null, 448 | "metadata": {}, 449 | "outputs": [], 450 | "source": [] 451 | }, 452 | { 453 | "cell_type": "code", 454 | "execution_count": null, 455 | "metadata": {}, 456 | "outputs": [], 457 | "source": [] 458 | }, 459 | { 460 | "cell_type": "code", 461 | "execution_count": null, 462 | "metadata": {}, 463 | "outputs": [], 464 | "source": [] 465 | }, 466 | { 467 | "cell_type": "code", 468 | "execution_count": null, 469 | "metadata": {}, 470 | "outputs": [], 471 | "source": [] 472 | }, 473 | { 474 | "cell_type": "code", 475 | "execution_count": null, 476 | "metadata": {}, 477 | "outputs": [], 478 | "source": [] 479 | }, 480 | { 481 | "cell_type": "code", 482 | "execution_count": null, 483 | "metadata": {}, 484 | "outputs": [], 485 | "source": [] 486 | }, 487 | { 488 | "cell_type": "code", 489 | "execution_count": null, 490 | "metadata": {}, 491 | "outputs": [], 492 | "source": [] 493 | }, 494 | { 495 | "cell_type": "code", 496 | "execution_count": null, 497 | "metadata": {}, 498 | "outputs": [], 499 | "source": [] 500 | }, 501 | { 502 | "cell_type": "code", 503 | "execution_count": null, 504 | "metadata": {}, 505 | "outputs": [], 506 | "source": [] 507 | }, 508 | { 509 | "cell_type": "code", 510 | "execution_count": null, 511 | "metadata": {}, 512 | "outputs": [], 513 | "source": [] 514 | }, 515 | { 516 | "cell_type": "code", 517 | "execution_count": null, 518 | "metadata": {}, 519 | "outputs": [], 520 | "source": [] 521 | }, 522 | { 523 | "cell_type": "code", 524 | "execution_count": null, 525 | "metadata": {}, 526 | "outputs": [], 527 | "source": [] 528 | }, 529 | { 530 | "cell_type": "code", 531 | "execution_count": null, 532 | "metadata": {}, 533 | "outputs": [], 534 | "source": [] 535 | }, 536 | { 537 | "cell_type": "code", 538 | "execution_count": null, 539 | "metadata": {}, 540 | "outputs": [], 541 | "source": [] 542 | } 543 | ], 544 | "metadata": { 545 | "kernelspec": { 546 | "display_name": "Python 3", 547 | "language": "python", 548 | "name": "python3" 549 | }, 550 | "language_info": { 551 | "codemirror_mode": { 552 | "name": "ipython", 553 | "version": 3 554 | }, 555 | "file_extension": ".py", 556 | "mimetype": "text/x-python", 557 | "name": "python", 558 | "nbconvert_exporter": "python", 559 | "pygments_lexer": "ipython3", 560 | "version": "3.7.6" 561 | } 562 | }, 563 | "nbformat": 4, 564 | "nbformat_minor": 4 565 | } 566 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # ant-learn-visualization 2 | python Visualization,using pyecharts、matplotlib、seaborn 3 | 4 | 安装依赖的方法:pyhton -m pip install -r requirements.txt 5 | -------------------------------------------------------------------------------- /boxplot_base.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Awesome-pyecharts 6 | 7 | 8 | 9 | 10 |
11 | 224 | 225 | 226 | -------------------------------------------------------------------------------- /datas/beijing_tianqi/beijing_tianqi_2018.csv: -------------------------------------------------------------------------------- 1 | ymd,bWendu,yWendu,tianqi,fengxiang,fengli,aqi,aqiInfo,aqiLevel 2 | 2018-01-01,3℃,-6℃,晴~多云,东北风,1-2级,59,良,2 3 | 2018-01-02,2℃,-5℃,阴~多云,东北风,1-2级,49,优,1 4 | 2018-01-03,2℃,-5℃,多云,北风,1-2级,28,优,1 5 | 2018-01-04,0℃,-8℃,阴,东北风,1-2级,28,优,1 6 | 2018-01-05,3℃,-6℃,多云~晴,西北风,1-2级,50,优,1 7 | 2018-01-06,2℃,-5℃,多云~阴,西南风,1-2级,32,优,1 8 | 2018-01-07,2℃,-4℃,阴~多云,西南风,1-2级,59,良,2 9 | 2018-01-08,2℃,-6℃,晴,西北风,4-5级,50,优,1 10 | 2018-01-09,1℃,-8℃,晴,西北风,3-4级,34,优,1 11 | 2018-01-10,-2℃,-10℃,晴,西北风,1-2级,26,优,1 12 | 2018-01-11,-1℃,-10℃,晴,北风,1-2级,24,优,1 13 | 2018-01-12,2℃,-8℃,晴,西南风,1-2级,75,良,2 14 | 2018-01-13,3℃,-7℃,多云,南风,1-2级,126,轻度污染,3 15 | 2018-01-14,6℃,-5℃,晴~多云,西北风,1-2级,187,中度污染,4 16 | 2018-01-15,2℃,-5℃,阴,东南风,1-2级,47,优,1 17 | 2018-01-16,4℃,-5℃,多云,南风,1-2级,112,轻度污染,3 18 | 2018-01-17,6℃,-7℃,多云~晴,西北风,1-2级,82,良,2 19 | 2018-01-18,5℃,-6℃,晴,西南风,1-2级,80,良,2 20 | 2018-01-19,7℃,-4℃,晴,南风,1-2级,115,轻度污染,3 21 | 2018-01-20,3℃,-6℃,晴~多云,东风,1-2级,64,良,2 22 | 2018-01-21,0℃,-5℃,阴~小雪,东北风,1-2级,63,良,2 23 | 2018-01-22,-3℃,-10℃,小雪~多云,东风,1-2级,47,优,1 24 | 2018-01-23,-4℃,-12℃,晴,西北风,3-4级,31,优,1 25 | 2018-01-24,-4℃,-11℃,晴,西南风,1-2级,34,优,1 26 | 2018-01-25,-3℃,-11℃,多云,东北风,1-2级,27,优,1 27 | 2018-01-26,-3℃,-10℃,晴~多云,南风,1-2级,39,优,1 28 | 2018-01-27,-1℃,-9℃,多云,南风,1-2级,105,轻度污染,3 29 | 2018-01-28,-1℃,-9℃,晴,西北风,3-4级,55,良,2 30 | 2018-01-29,1℃,-8℃,晴,西北风,1-2级,57,良,2 31 | 2018-01-30,4℃,-7℃,晴,西北风,1-2级,36,优,1 32 | 2018-01-31,3℃,-8℃,晴,西南风,1-2级,60,良,2 33 | 2018-02-01,4℃,-7℃,多云,北风,1-2级,68,良,2 34 | 2018-02-02,-1℃,-9℃,晴,北风,3-4级,32,优,1 35 | 2018-02-03,0℃,-9℃,多云,北风,1-2级,24,优,1 36 | 2018-02-04,1℃,-8℃,晴,西南风,1-2级,36,优,1 37 | 2018-02-05,0℃,-10℃,晴,北风,3-4级,24,优,1 38 | 2018-02-06,3℃,-7℃,多云~阴,西南风,1-2级,56,良,2 39 | 2018-02-07,2℃,-10℃,多云~晴,北风,4-5级,63,良,2 40 | 2018-02-08,3℃,-7℃,多云,南风,3-4级,67,良,2 41 | 2018-02-09,4℃,-9℃,多云,西北风,4-5级,93,良,2 42 | 2018-02-10,1℃,-9℃,晴,西北风,3-4级,39,优,1 43 | 2018-02-11,0℃,-9℃,晴,西北风,4-5级,62,良,2 44 | 2018-02-12,5℃,-7℃,晴,西北风,1-2级,53,良,2 45 | 2018-02-13,8℃,-4℃,晴~多云,西风,1-2级,78,良,2 46 | 2018-02-14,6℃,-6℃,多云,北风,1-2级,42,优,1 47 | 2018-02-15,5℃,-5℃,多云,西南风,1-2级,48,优,1 48 | 2018-02-16,8℃,-5℃,晴~多云,西南风,1-2级,118,轻度污染,3 49 | 2018-02-17,5℃,-4℃,多云~阴,南风,1-2级,103,轻度污染,3 50 | 2018-02-18,8℃,-3℃,多云,南风,1-2级,148,轻度污染,3 51 | 2018-02-19,6℃,-3℃,多云,南风,1-2级,183,中度污染,4 52 | 2018-02-20,5℃,-5℃,晴,北风,1-2级,76,良,2 53 | 2018-02-21,8℃,-4℃,晴,南风,1-2级,53,良,2 54 | 2018-02-22,9℃,-4℃,多云,西南风,1-2级,42,优,1 55 | 2018-02-23,10℃,-4℃,多云,东北风,1-2级,45,优,1 56 | 2018-02-24,3℃,-6℃,多云~晴,南风,1-2级,66,良,2 57 | 2018-02-25,6℃,-4℃,多云,西南风,1-2级,73,良,2 58 | 2018-02-26,12℃,-1℃,晴~多云,西南风,1-2级,157,中度污染,4 59 | 2018-02-27,7℃,0℃,阴,东风,1-2级,220,重度污染,5 60 | 2018-02-28,9℃,-2℃,多云~晴,西南风,3-4级,139,轻度污染,3 61 | 2018-03-01,8℃,-3℃,多云,西南风,1-2级,46,优,1 62 | 2018-03-02,9℃,-1℃,晴~多云,北风,1-2级,95,良,2 63 | 2018-03-03,13℃,3℃,多云~阴,北风,1-2级,214,重度污染,5 64 | 2018-03-04,7℃,-2℃,阴~多云,东南风,1-2级,144,轻度污染,3 65 | 2018-03-05,8℃,-3℃,晴,南风,1-2级,94,良,2 66 | 2018-03-06,6℃,-3℃,多云~阴,东南风,3-4级,67,良,2 67 | 2018-03-07,6℃,-2℃,阴~多云,北风,1-2级,65,良,2 68 | 2018-03-08,8℃,-4℃,晴,东北风,1-2级,62,良,2 69 | 2018-03-09,10℃,-2℃,多云,西南风,1-2级,132,轻度污染,3 70 | 2018-03-10,14℃,-2℃,晴,东南风,1-2级,171,中度污染,4 71 | 2018-03-11,11℃,0℃,多云,南风,1-2级,81,良,2 72 | 2018-03-12,15℃,3℃,多云~晴,南风,1-2级,174,中度污染,4 73 | 2018-03-13,17℃,5℃,晴~多云,南风,1-2级,287,重度污染,5 74 | 2018-03-14,15℃,6℃,多云~阴,东北风,1-2级,293,重度污染,5 75 | 2018-03-15,12℃,-1℃,多云~晴,东北风,3-4级,70,良,2 76 | 2018-03-16,10℃,-1℃,多云,南风,1-2级,58,良,2 77 | 2018-03-17,4℃,0℃,小雨~阴,南风,1-2级,81,良,2 78 | 2018-03-18,13℃,1℃,多云~晴,西南风,1-2级,134,轻度污染,3 79 | 2018-03-19,13℃,2℃,多云,东风,1-2级,107,轻度污染,3 80 | 2018-03-20,10℃,-2℃,多云,南风,1-2级,41,优,1 81 | 2018-03-21,11℃,1℃,多云,西南风,1-2级,76,良,2 82 | 2018-03-22,17℃,4℃,晴~多云,西南风,1-2级,112,轻度污染,3 83 | 2018-03-23,18℃,5℃,多云,北风,1-2级,146,轻度污染,3 84 | 2018-03-24,22℃,5℃,晴,西南风,1-2级,119,轻度污染,3 85 | 2018-03-25,24℃,7℃,晴,南风,1-2级,78,良,2 86 | 2018-03-26,25℃,7℃,多云,西南风,1-2级,151,中度污染,4 87 | 2018-03-27,27℃,11℃,晴,南风,1-2级,243,重度污染,5 88 | 2018-03-28,25℃,9℃,多云~晴,东风,1-2级,387,严重污染,6 89 | 2018-03-29,19℃,7℃,晴,南风,1-2级,119,轻度污染,3 90 | 2018-03-30,18℃,8℃,多云,南风,1-2级,68,良,2 91 | 2018-03-31,23℃,9℃,多云~晴,南风,1-2级,125,轻度污染,3 92 | 2018-04-01,25℃,11℃,晴~多云,南风,1-2级,218,重度污染,5 93 | 2018-04-02,26℃,11℃,多云,北风,1-2级,287,重度污染,5 94 | 2018-04-03,14℃,6℃,多云~阴,东北风,3-4级,80,良,2 95 | 2018-04-04,10℃,1℃,小雨~雨夹雪,东北风,1-2级,35,优,1 96 | 2018-04-05,10℃,3℃,多云,西南风,1-2级,73,良,2 97 | 2018-04-06,11℃,4℃,多云~晴,北风,4-5级,86,良,2 98 | 2018-04-07,12℃,2℃,多云~晴,西北风,3-4级,42,优,1 99 | 2018-04-08,18℃,5℃,晴,西南风,1-2级,68,良,2 100 | 2018-04-09,20℃,7℃,晴~多云,南风,1-2级,111,轻度污染,3 101 | 2018-04-10,24℃,8℃,多云~晴,西北风,4-5级,101,轻度污染,3 102 | 2018-04-11,23℃,9℃,晴,西南风,3-4级,48,优,1 103 | 2018-04-12,22℃,7℃,多云~小雨,东南风,1-2级,79,良,2 104 | 2018-04-13,11℃,6℃,小雨~多云,东南风,1-2级,64,良,2 105 | 2018-04-14,19℃,5℃,多云~晴,北风,4-5级,122,轻度污染,3 106 | 2018-04-15,21℃,8℃,晴,西南风,1-2级,72,良,2 107 | 2018-04-16,23℃,12℃,晴~多云,南风,1-2级,103,轻度污染,3 108 | 2018-04-17,25℃,12℃,多云~晴,南风,1-2级,145,轻度污染,3 109 | 2018-04-18,27℃,14℃,多云~晴,西南风,3-4级,147,轻度污染,3 110 | 2018-04-19,26℃,13℃,多云,东南风,4-5级,170,中度污染,4 111 | 2018-04-20,28℃,14℃,多云~小雨,南风,4-5级,164,中度污染,4 112 | 2018-04-21,16℃,12℃,大雨~小雨,东北风,3-4级,105,轻度污染,3 113 | 2018-04-22,16℃,12℃,阴~多云,东北风,3-4级,27,优,1 114 | 2018-04-23,19℃,9℃,多云,东北风,3-4级,34,优,1 115 | 2018-04-24,23℃,10℃,晴,北风,3-4级,41,优,1 116 | 2018-04-25,25℃,11℃,晴,西南风,3-4级,55,良,2 117 | 2018-04-26,26℃,12℃,多云~晴,西北风,1-2级,117,轻度污染,3 118 | 2018-04-27,25℃,13℃,晴,西南风,3-4级,112,轻度污染,3 119 | 2018-04-28,27℃,17℃,晴,西南风,3-4级,125,轻度污染,3 120 | 2018-04-29,30℃,16℃,多云,南风,3-4级,193,中度污染,4 121 | 2018-04-30,24℃,14℃,多云,南风,3-4级,62,良,2 122 | 2018-05-01,25℃,13℃,阴,东北风,3-4级,121,轻度污染,3 123 | 2018-05-02,25℃,13℃,多云~晴,北风,3-4级,44,优,1 124 | 2018-05-03,24℃,12℃,晴,北风,1-2级,48,优,1 125 | 2018-05-04,27℃,16℃,晴~多云,西南风,1-2级,86,良,2 126 | 2018-05-05,25℃,13℃,多云,北风,3-4级,177,中度污染,4 127 | 2018-05-06,28℃,14℃,晴,西南风,1-2级,126,轻度污染,3 128 | 2018-05-07,28℃,13℃,晴,南风,3-4级,100,良,2 129 | 2018-05-08,27℃,13℃,晴,东南风,3-4级,64,良,2 130 | 2018-05-09,29℃,17℃,晴~多云,西南风,3-4级,79,良,2 131 | 2018-05-10,26℃,18℃,多云,南风,3-4级,118,轻度污染,3 132 | 2018-05-11,24℃,15℃,阴~多云,东风,1-2级,106,轻度污染,3 133 | 2018-05-12,28℃,16℃,小雨,东南风,3-4级,186,中度污染,4 134 | 2018-05-13,30℃,17℃,晴,南风,1-2级,68,良,2 135 | 2018-05-14,34℃,22℃,晴~多云,南风,3-4级,158,中度污染,4 136 | 2018-05-15,31℃,22℃,小雨,南风,1-2级,93,良,2 137 | 2018-05-16,29℃,21℃,多云~小雨,东风,1-2级,142,轻度污染,3 138 | 2018-05-17,25℃,19℃,小雨~多云,北风,1-2级,70,良,2 139 | 2018-05-18,28℃,16℃,多云~晴,南风,1-2级,49,优,1 140 | 2018-05-19,27℃,16℃,多云~小雨,南风,1-2级,69,良,2 141 | 2018-05-20,21℃,16℃,阴~小雨,东风,1-2级,54,良,2 142 | 2018-05-21,18℃,14℃,小雨,东南风,1-2级,84,良,2 143 | 2018-05-22,25℃,10℃,多云~晴,西风,4-5级,103,轻度污染,3 144 | 2018-05-23,29℃,15℃,晴,西南风,3-4级,153,中度污染,4 145 | 2018-05-24,31℃,17℃,晴,南风,3-4级,99,良,2 146 | 2018-05-25,31℃,19℃,多云,西南风,1-2级,98,良,2 147 | 2018-05-26,30℃,17℃,小雨~多云,西南风,3-4级,143,轻度污染,3 148 | 2018-05-27,32℃,17℃,多云,西南风,3-4级,89,良,2 149 | 2018-05-28,30℃,16℃,晴,西北风,4-5级,178,中度污染,4 150 | 2018-05-29,31℃,16℃,多云,西北风,1-2级,41,优,1 151 | 2018-05-30,33℃,18℃,晴,西风,1-2级,46,优,1 152 | 2018-05-31,35℃,19℃,晴,南风,1-2级,79,良,2 153 | 2018-06-01,36℃,21℃,晴,西南风,3-4级,72,良,2 154 | 2018-06-02,35℃,21℃,多云,南风,3-4级,98,良,2 155 | 2018-06-03,32℃,19℃,多云,北风,1-2级,92,良,2 156 | 2018-06-04,35℃,20℃,晴,西南风,3-4级,69,良,2 157 | 2018-06-05,38℃,25℃,多云,西南风,4-5级,94,良,2 158 | 2018-06-06,36℃,25℃,多云,东风,1-2级,102,轻度污染,3 159 | 2018-06-07,33℃,22℃,多云,西南风,1-2级,60,良,2 160 | 2018-06-08,32℃,19℃,多云~雷阵雨,西南风,1-2级,43,优,1 161 | 2018-06-09,23℃,17℃,小雨,北风,1-2级,45,优,1 162 | 2018-06-10,27℃,17℃,多云,东南风,1-2级,51,良,2 163 | 2018-06-11,29℃,19℃,多云,西南风,3-4级,85,良,2 164 | 2018-06-12,32℃,19℃,多云~雷阵雨,东南风,1-2级,116,轻度污染,3 165 | 2018-06-13,28℃,19℃,雷阵雨~多云,东北风,1-2级,73,良,2 166 | 2018-06-14,31℃,20℃,多云,南风,1-2级,54,良,2 167 | 2018-06-15,32℃,20℃,多云,东南风,3-4级,117,轻度污染,3 168 | 2018-06-16,31℃,21℃,多云~雷阵雨,南风,1-2级,103,轻度污染,3 169 | 2018-06-17,31℃,22℃,阴~雷阵雨,南风,1-2级,71,良,2 170 | 2018-06-18,30℃,21℃,雷阵雨,西南风,1-2级,112,轻度污染,3 171 | 2018-06-19,32℃,20℃,多云~晴,东北风,1-2级,81,良,2 172 | 2018-06-20,35℃,21℃,晴,南风,1-2级,71,良,2 173 | 2018-06-21,35℃,24℃,多云,南风,1-2级,73,良,2 174 | 2018-06-22,30℃,21℃,雷阵雨~多云,东南风,1-2级,83,良,2 175 | 2018-06-23,35℃,24℃,多云~晴,南风,1-2级,104,轻度污染,3 176 | 2018-06-24,36℃,25℃,多云,南风,3-4级,98,良,2 177 | 2018-06-25,34℃,24℃,雷阵雨,南风,1-2级,101,轻度污染,3 178 | 2018-06-26,36℃,25℃,晴,西南风,3-4级,174,中度污染,4 179 | 2018-06-27,37℃,25℃,多云,东北风,3-4级,54,良,2 180 | 2018-06-28,35℃,24℃,多云~晴,北风,1-2级,33,优,1 181 | 2018-06-29,37℃,25℃,晴,南风,1-2级,59,良,2 182 | 2018-06-30,37℃,23℃,雷阵雨~多云,东南风,3-4级,81,良,2 183 | 2018-07-01,35℃,23℃,晴,东南风,1-2级,68,良,2 184 | 2018-07-02,32℃,23℃,多云~雷阵雨,东南风,3-4级,66,良,2 185 | 2018-07-03,32℃,24℃,雷阵雨~多云,东南风,1-2级,76,良,2 186 | 2018-07-04,35℃,26℃,多云,西南风,1-2级,96,良,2 187 | 2018-07-05,37℃,24℃,多云~雷阵雨,东南风,1-2级,104,轻度污染,3 188 | 2018-07-06,33℃,23℃,多云~雷阵雨,东南风,3-4级,71,良,2 189 | 2018-07-07,31℃,23℃,雷阵雨,东南风,1-2级,72,良,2 190 | 2018-07-08,30℃,23℃,雷阵雨,南风,1-2级,73,良,2 191 | 2018-07-09,30℃,22℃,雷阵雨~多云,东南风,1-2级,106,轻度污染,3 192 | 2018-07-10,30℃,22℃,多云~雷阵雨,南风,1-2级,48,优,1 193 | 2018-07-11,25℃,22℃,雷阵雨~大雨,东北风,1-2级,44,优,1 194 | 2018-07-12,27℃,22℃,多云,南风,1-2级,46,优,1 195 | 2018-07-13,28℃,23℃,雷阵雨,东风,1-2级,60,良,2 196 | 2018-07-14,31℃,24℃,雷阵雨~多云,东南风,1-2级,73,良,2 197 | 2018-07-15,32℃,25℃,雷阵雨,南风,1-2级,87,良,2 198 | 2018-07-16,31℃,24℃,中雨~雷阵雨,南风,1-2级,43,优,1 199 | 2018-07-17,27℃,23℃,中雨~雷阵雨,西风,1-2级,28,优,1 200 | 2018-07-18,33℃,25℃,多云,南风,1-2级,99,良,2 201 | 2018-07-19,33℃,27℃,多云~雷阵雨,南风,1-2级,91,良,2 202 | 2018-07-20,33℃,27℃,多云,西南风,3-4级,116,轻度污染,3 203 | 2018-07-21,34℃,26℃,多云~雷阵雨,南风,3-4级,96,良,2 204 | 2018-07-22,34℃,25℃,多云,东南风,1-2级,66,良,2 205 | 2018-07-23,32℃,25℃,小雨~大雨,东风,1-2级,75,良,2 206 | 2018-07-24,28℃,26℃,暴雨~雷阵雨,东北风,3-4级,29,优,1 207 | 2018-07-25,32℃,25℃,多云,北风,1-2级,28,优,1 208 | 2018-07-26,33℃,25℃,多云~雷阵雨,东北风,1-2级,40,优,1 209 | 2018-07-27,32℃,23℃,多云,东北风,1-2级,65,良,2 210 | 2018-07-28,33℃,24℃,多云~晴,东南风,1-2级,83,良,2 211 | 2018-07-29,33℃,25℃,多云,东南风,1-2级,101,轻度污染,3 212 | 2018-07-30,34℃,25℃,晴,东南风,1-2级,104,轻度污染,3 213 | 2018-07-31,35℃,26℃,晴,南风,1-2级,99,良,2 214 | 2018-08-01,35℃,27℃,多云~雷阵雨,东南风,1-2级,91,良,2 215 | 2018-08-02,36℃,26℃,多云~晴,南风,1-2级,118,轻度污染,3 216 | 2018-08-03,36℃,26℃,晴,南风,1-2级,86,良,2 217 | 2018-08-04,36℃,27℃,晴~多云,南风,1-2级,96,良,2 218 | 2018-08-05,35℃,25℃,雷阵雨~中雨,东风,1-2级,61,良,2 219 | 2018-08-06,30℃,25℃,小雨~雷阵雨,东风,1-2级,52,良,2 220 | 2018-08-07,29℃,24℃,雷阵雨~中雨,东南风,1-2级,85,良,2 221 | 2018-08-08,29℃,24℃,雷阵雨~阴,东北风,1-2级,45,优,1 222 | 2018-08-09,30℃,24℃,多云,南风,1-2级,49,优,1 223 | 2018-08-10,33℃,25℃,多云~雷阵雨,南风,1-2级,71,良,2 224 | 2018-08-11,30℃,23℃,雷阵雨~中雨,东风,1-2级,60,良,2 225 | 2018-08-12,30℃,24℃,雷阵雨,东南风,1-2级,74,良,2 226 | 2018-08-13,31℃,24℃,雷阵雨~中雨,东北风,1-2级,62,良,2 227 | 2018-08-14,29℃,24℃,中雨~小雨,东北风,1-2级,42,优,1 228 | 2018-08-15,32℃,24℃,多云,东北风,3-4级,33,优,1 229 | 2018-08-16,30℃,21℃,晴~多云,东北风,1-2级,40,优,1 230 | 2018-08-17,30℃,22℃,多云~雷阵雨,东南风,1-2级,69,良,2 231 | 2018-08-18,28℃,23℃,小雨~中雨,北风,3-4级,40,优,1 232 | 2018-08-19,26℃,23℃,中雨~小雨,东北风,1-2级,37,优,1 233 | 2018-08-20,32℃,23℃,多云~晴,北风,1-2级,41,优,1 234 | 2018-08-21,32℃,22℃,多云,北风,1-2级,38,优,1 235 | 2018-08-22,28℃,21℃,雷阵雨~多云,西南风,1-2级,48,优,1 236 | 2018-08-23,31℃,21℃,多云,北风,1-2级,43,优,1 237 | 2018-08-24,30℃,20℃,晴,北风,1-2级,40,优,1 238 | 2018-08-25,31℃,22℃,多云~小雨,南风,1-2级,62,良,2 239 | 2018-08-26,31℃,22℃,雷阵雨,东南风,1-2级,76,良,2 240 | 2018-08-27,30℃,22℃,多云~雷阵雨,东南风,1-2级,89,良,2 241 | 2018-08-28,29℃,22℃,小雨~多云,南风,1-2级,58,良,2 242 | 2018-08-29,31℃,20℃,晴~多云,北风,3-4级,44,优,1 243 | 2018-08-30,29℃,20℃,多云,南风,1-2级,47,优,1 244 | 2018-08-31,29℃,20℃,多云~阴,东南风,1-2级,48,优,1 245 | 2018-09-01,27℃,19℃,阴~小雨,南风,1-2级,50,优,1 246 | 2018-09-02,27℃,19℃,小雨~多云,南风,1-2级,55,良,2 247 | 2018-09-03,30℃,19℃,晴,北风,3-4级,70,良,2 248 | 2018-09-04,31℃,18℃,晴,西南风,3-4级,24,优,1 249 | 2018-09-05,31℃,19℃,晴~多云,西南风,3-4级,34,优,1 250 | 2018-09-06,27℃,18℃,多云~晴,西北风,4-5级,37,优,1 251 | 2018-09-07,27℃,16℃,晴,西北风,3-4级,22,优,1 252 | 2018-09-08,27℃,15℃,多云~晴,北风,1-2级,28,优,1 253 | 2018-09-09,28℃,16℃,晴,西南风,1-2级,51,良,2 254 | 2018-09-10,28℃,19℃,多云,南风,1-2级,65,良,2 255 | 2018-09-11,26℃,19℃,多云,南风,1-2级,68,良,2 256 | 2018-09-12,29℃,19℃,多云,南风,1-2级,59,良,2 257 | 2018-09-13,29℃,20℃,多云~阴,南风,1-2级,107,轻度污染,3 258 | 2018-09-14,28℃,19℃,小雨~多云,南风,1-2级,128,轻度污染,3 259 | 2018-09-15,26℃,15℃,多云,北风,3-4级,42,优,1 260 | 2018-09-16,25℃,14℃,多云~晴,北风,1-2级,29,优,1 261 | 2018-09-17,27℃,17℃,多云~阴,北风,1-2级,37,优,1 262 | 2018-09-18,25℃,17℃,阴~多云,西南风,1-2级,50,优,1 263 | 2018-09-19,26℃,17℃,多云,南风,1-2级,52,良,2 264 | 2018-09-20,27℃,16℃,多云,西南风,1-2级,63,良,2 265 | 2018-09-21,25℃,14℃,晴,西北风,3-4级,50,优,1 266 | 2018-09-22,24℃,13℃,晴,西北风,3-4级,28,优,1 267 | 2018-09-23,23℃,12℃,晴,西北风,4-5级,28,优,1 268 | 2018-09-24,23℃,11℃,晴,北风,1-2级,28,优,1 269 | 2018-09-25,24℃,12℃,晴~多云,南风,1-2级,44,优,1 270 | 2018-09-26,24℃,14℃,多云,南风,1-2级,53,良,2 271 | 2018-09-27,22℃,12℃,小雨,南风,1-2级,84,良,2 272 | 2018-09-28,24℃,11℃,多云,西南风,3-4级,84,良,2 273 | 2018-09-29,22℃,11℃,晴,北风,3-4级,21,优,1 274 | 2018-09-30,19℃,13℃,多云,西北风,4-5级,22,优,1 275 | 2018-10-01,24℃,12℃,晴,北风,4-5级,25,优,1 276 | 2018-10-02,24℃,11℃,晴,西北风,1-2级,31,优,1 277 | 2018-10-03,25℃,10℃,晴,北风,1-2级,36,优,1 278 | 2018-10-04,25℃,12℃,晴,南风,1-2级,65,良,2 279 | 2018-10-05,24℃,14℃,多云,南风,1-2级,105,轻度污染,3 280 | 2018-10-06,20℃,8℃,晴,北风,4-5级,32,优,1 281 | 2018-10-07,21℃,7℃,晴,西风,1-2级,35,优,1 282 | 2018-10-08,21℃,8℃,多云,北风,1-2级,37,优,1 283 | 2018-10-09,15℃,4℃,多云~晴,西北风,4-5级,21,优,1 284 | 2018-10-10,17℃,4℃,多云~晴,西北风,1-2级,25,优,1 285 | 2018-10-11,18℃,5℃,晴~多云,北风,1-2级,30,优,1 286 | 2018-10-12,20℃,8℃,多云~晴,南风,1-2级,62,良,2 287 | 2018-10-13,20℃,8℃,多云,西北风,1-2级,106,轻度污染,3 288 | 2018-10-14,21℃,10℃,多云,南风,1-2级,177,中度污染,4 289 | 2018-10-15,17℃,11℃,小雨,北风,1-2级,198,中度污染,4 290 | 2018-10-16,17℃,7℃,多云~晴,东北风,1-2级,88,良,2 291 | 2018-10-17,17℃,5℃,晴,北风,1-2级,54,良,2 292 | 2018-10-18,18℃,5℃,晴,南风,1-2级,49,优,1 293 | 2018-10-19,19℃,7℃,多云,南风,1-2级,60,良,2 294 | 2018-10-20,18℃,7℃,多云,南风,1-2级,86,良,2 295 | 2018-10-21,18℃,7℃,多云,南风,1-2级,143,轻度污染,3 296 | 2018-10-22,19℃,5℃,多云~晴,西北风,1-2级,176,中度污染,4 297 | 2018-10-23,19℃,4℃,晴,西南风,3-4级,37,优,1 298 | 2018-10-24,20℃,6℃,晴~多云,南风,1-2级,70,良,2 299 | 2018-10-25,15℃,8℃,多云,西风,1-2级,119,轻度污染,3 300 | 2018-10-26,14℃,3℃,晴,西北风,4-5级,46,优,1 301 | 2018-10-27,17℃,5℃,多云,西南风,1-2级,33,优,1 302 | 2018-10-28,17℃,4℃,多云~晴,西北风,4-5级,32,优,1 303 | 2018-10-29,15℃,3℃,晴,北风,3-4级,22,优,1 304 | 2018-10-30,16℃,1℃,晴,北风,1-2级,33,优,1 305 | 2018-10-31,17℃,3℃,晴,西南风,1-2级,47,优,1 306 | 2018-11-01,17℃,3℃,晴,南风,1-2级,69,良,2 307 | 2018-11-02,18℃,4℃,晴,南风,1-2级,149,轻度污染,3 308 | 2018-11-03,16℃,6℃,多云,南风,1-2级,206,重度污染,5 309 | 2018-11-04,10℃,2℃,小雨~多云,北风,3-4级,115,轻度污染,3 310 | 2018-11-05,10℃,2℃,多云,西南风,1-2级,30,优,1 311 | 2018-11-06,12℃,0℃,多云,北风,1-2级,33,优,1 312 | 2018-11-07,13℃,3℃,多云,西南风,1-2级,49,优,1 313 | 2018-11-08,14℃,2℃,多云,西南风,1-2级,90,良,2 314 | 2018-11-09,15℃,1℃,晴~多云,北风,3-4级,69,良,2 315 | 2018-11-10,11℃,0℃,多云,北风,1-2级,35,优,1 316 | 2018-11-11,13℃,1℃,多云~晴,西南风,1-2级,70,良,2 317 | 2018-11-12,14℃,2℃,晴,南风,1-2级,124,轻度污染,3 318 | 2018-11-13,13℃,5℃,多云,东南风,1-2级,219,重度污染,5 319 | 2018-11-14,13℃,5℃,多云,南风,1-2级,266,重度污染,5 320 | 2018-11-15,8℃,1℃,小雨~多云,北风,3-4级,100,良,2 321 | 2018-11-16,8℃,-1℃,晴~多云,北风,1-2级,28,优,1 322 | 2018-11-17,9℃,-2℃,多云~晴,西南风,1-2级,66,良,2 323 | 2018-11-18,11℃,-3℃,晴,西北风,3-4级,70,良,2 324 | 2018-11-19,10℃,-2℃,晴~多云,南风,1-2级,78,良,2 325 | 2018-11-20,9℃,-1℃,多云,北风,1-2级,74,良,2 326 | 2018-11-21,9℃,-3℃,晴,西北风,2级,43,优,1 327 | 2018-11-22,8℃,-3℃,晴~多云,东南风,1级,55,良,2 328 | 2018-11-23,7℃,0℃,多云,东北风,2级,93,良,2 329 | 2018-11-24,9℃,-3℃,晴,西南风,1级,114,轻度污染,3 330 | 2018-11-25,10℃,-3℃,晴,东南风,1级,120,轻度污染,3 331 | 2018-11-26,10℃,0℃,多云,东南风,1级,245,重度污染,5 332 | 2018-11-27,9℃,-3℃,晴~多云,西北风,2级,198,中度污染,4 333 | 2018-11-28,8℃,-3℃,晴,东北风,1级,115,轻度污染,3 334 | 2018-11-29,7℃,-4℃,晴,东南风,1级,107,轻度污染,3 335 | 2018-11-30,8℃,-3℃,晴,东南风,1级,123,轻度污染,3 336 | 2018-12-01,7℃,0℃,多云,东南风,1级,163,中度污染,4 337 | 2018-12-02,9℃,2℃,雾~多云,东北风,1级,234,重度污染,5 338 | 2018-12-03,8℃,-3℃,多云~晴,东北风,3级,198,中度污染,4 339 | 2018-12-04,4℃,-6℃,晴~多云,西北风,2级,61,良,2 340 | 2018-12-05,1℃,-4℃,阴~多云,东南风,1级,73,良,2 341 | 2018-12-06,-2℃,-9℃,晴,西北风,3级,40,优,1 342 | 2018-12-07,-4℃,-10℃,晴,西北风,3级,33,优,1 343 | 2018-12-08,-2℃,-10℃,晴~多云,西北风,2级,37,优,1 344 | 2018-12-09,-1℃,-10℃,多云~晴,东南风,1级,62,良,2 345 | 2018-12-10,1℃,-6℃,多云,东北风,1级,79,良,2 346 | 2018-12-11,-1℃,-10℃,晴,西北风,3级,56,良,2 347 | 2018-12-12,1℃,-8℃,晴,西南风,1级,50,优,1 348 | 2018-12-13,3℃,-7℃,晴,西北风,2级,42,优,1 349 | 2018-12-14,4℃,-6℃,晴,东南风,1级,68,良,2 350 | 2018-12-15,2℃,-6℃,霾,东南风,1级,117,轻度污染,3 351 | 2018-12-16,7℃,-4℃,晴,西北风,2级,108,轻度污染,3 352 | 2018-12-17,7℃,-5℃,晴,西北风,2级,47,优,1 353 | 2018-12-18,9℃,-4℃,晴,西北风,2级,53,良,2 354 | 2018-12-19,9℃,-5℃,晴~多云,西北风,1级,59,良,2 355 | 2018-12-20,6℃,-4℃,霾,东南风,1级,78,良,2 356 | 2018-12-21,10℃,-2℃,晴~多云,西北风,1级,98,良,2 357 | 2018-12-22,8℃,-6℃,多云,西北风,2级,106,轻度污染,3 358 | 2018-12-23,1℃,-9℃,晴,西北风,3级,106,轻度污染,3 359 | 2018-12-24,2℃,-8℃,晴,西南风,1级,106,轻度污染,3 360 | 2018-12-25,2℃,-9℃,晴,东北风,2级,94,良,2 361 | 2018-12-26,-2℃,-11℃,晴~多云,东北风,2级,26,优,1 362 | 2018-12-27,-5℃,-12℃,多云~晴,西北风,3级,48,优,1 363 | 2018-12-28,-3℃,-11℃,晴,西北风,3级,40,优,1 364 | 2018-12-29,-3℃,-12℃,晴,西北风,2级,29,优,1 365 | 2018-12-30,-2℃,-11℃,晴~多云,东北风,1级,31,优,1 366 | 2018-12-31,-2℃,-10℃,多云,东北风,1级,56,良,2 367 | -------------------------------------------------------------------------------- /datas/beijing_tianqi/beijing_tianqi_2019.csv: -------------------------------------------------------------------------------- 1 | ymd,bWendu,yWendu,tianqi,fengxiang,fengli,aqi,aqiInfo,aqiLevel 2 | 2019-01-01,1℃,-10℃,晴~多云,西北风,1级,56,良,2 3 | 2019-01-02,1℃,-9℃,多云,东北风,1级,60,良,2 4 | 2019-01-03,2℃,-7℃,霾,东北风,1级,165,中度污染,4 5 | 2019-01-04,2℃,-7℃,晴,西北风,2级,50,优,1 6 | 2019-01-05,0℃,-8℃,多云,东北风,2级,29,优,1 7 | 2019-01-06,3℃,-7℃,多云,东南风,1级,84,良,2 8 | 2019-01-07,2℃,-7℃,多云,西北风,2级,61,良,2 9 | 2019-01-08,1℃,-10℃,晴,西北风,2级,28,优,1 10 | 2019-01-09,3℃,-9℃,晴,西南风,1级,60,良,2 11 | 2019-01-10,4℃,-7℃,晴~多云,西南风,1级,105,轻度污染,3 12 | 2019-01-11,5℃,-7℃,霾,东北风,1级,133,轻度污染,3 13 | 2019-01-12,6℃,-5℃,霾,西南风,1级,229,重度污染,5 14 | 2019-01-13,6℃,-7℃,晴,东北风,1级,165,中度污染,4 15 | 2019-01-14,6℃,-8℃,霾~晴,西北风,2级,157,中度污染,4 16 | 2019-01-15,-2℃,-10℃,晴,西北风,3级,53,良,2 17 | 2019-01-16,2℃,-8℃,晴,西南风,1级,60,良,2 18 | 2019-01-17,5℃,-9℃,晴,西北风,1级,66,良,2 19 | 2019-01-18,6℃,-6℃,霾~多云,东北风,1级,92,良,2 20 | 2019-01-19,3℃,-6℃,多云,东北风,2级,35,优,1 21 | 2019-01-20,5℃,-7℃,晴,西北风,2级,30,优,1 22 | 2019-01-21,8℃,-4℃,晴,西北风,2级,52,良,2 23 | 2019-01-22,10℃,-3℃,晴,西北风,2级,60,良,2 24 | 2019-01-23,8℃,-6℃,晴,东北风,2级,48,优,1 25 | 2019-01-24,5℃,-5℃,多云,东北风,1级,78,良,2 26 | 2019-01-25,5℃,-6℃,晴,东北风,2级,35,优,1 27 | 2019-01-26,5℃,-5℃,晴~多云,东南风,1级,35,优,1 28 | 2019-01-27,7℃,-4℃,多云~晴,西北风,2级,95,良,2 29 | 2019-01-28,6℃,-4℃,晴~多云,西北风,1级,48,优,1 30 | 2019-01-29,7℃,-4℃,多云,东南风,1级,138,轻度污染,3 31 | 2019-01-30,5℃,-7℃,多云,东北风,3级,76,良,2 32 | 2019-01-31,2℃,-8℃,多云,西北风,2级,25,优,1 33 | 2019-02-01,6℃,-5℃,晴~多云,西南风,1级,69,良,2 34 | 2019-02-02,3℃,-4℃,多云,东北风,1级,137,轻度污染,3 35 | 2019-02-03,8℃,-7℃,多云~晴,西北风,2级,118,轻度污染,3 36 | 2019-02-04,4℃,-6℃,多云~晴,东北风,1级,76,良,2 37 | 2019-02-05,5℃,-5℃,晴~霾,东南风,2级,155,中度污染,4 38 | 2019-02-06,2℃,-7℃,霾,东南风,2级,88,良,2 39 | 2019-02-07,-2℃,-7℃,多云,东北风,3级,31,优,1 40 | 2019-02-08,-1℃,-7℃,多云,西南风,2级,42,优,1 41 | 2019-02-09,0℃,-8℃,多云,东北风,2级,24,优,1 42 | 2019-02-10,0℃,-8℃,多云,东南风,1级,38,优,1 43 | 2019-02-11,3℃,-6℃,多云,东北风,2级,56,良,2 44 | 2019-02-12,-3℃,-8℃,小雪~多云,东北风,2级,47,优,1 45 | 2019-02-13,1℃,-6℃,多云,东北风,2级,38,优,1 46 | 2019-02-14,-3℃,-6℃,小雪~多云,东南风,2级,71,良,2 47 | 2019-02-15,2℃,-7℃,晴,西北风,3级,30,优,1 48 | 2019-02-16,3℃,-6℃,晴,西北风,2级,23,优,1 49 | 2019-02-17,6℃,-5℃,晴~多云,西北风,2级,25,优,1 50 | 2019-02-18,4℃,-3℃,阴,东南风,1级,42,优,1 51 | 2019-02-19,7℃,-4℃,多云~晴,西北风,2级,117,轻度污染,3 52 | 2019-02-20,9℃,-4℃,晴,西北风,1级,50,优,1 53 | 2019-02-21,11℃,-2℃,晴~多云,东南风,1级,119,轻度污染,3 54 | 2019-02-22,11℃,-2℃,霾,东北风,1级,131,轻度污染,3 55 | 2019-02-23,12℃,-2℃,霾,西南风,1级,163,中度污染,4 56 | 2019-02-24,13℃,-1℃,晴~多云,东北风,2级,112,轻度污染,3 57 | 2019-02-25,10℃,-2℃,多云,东南风,1级,73,良,2 58 | 2019-02-26,10℃,-2℃,多云,东南风,2级,71,良,2 59 | 2019-02-27,12℃,-2℃,晴,东南风,1级,117,轻度污染,3 60 | 2019-02-28,14℃,-1℃,晴,西北风,1级,101,轻度污染,3 61 | 2019-03-01,15℃,1℃,晴~多云,东北风,1级,152,中度污染,4 62 | 2019-03-02,15℃,3℃,霾,西南风,2级,232,重度污染,5 63 | 2019-03-03,15℃,2℃,霾,西南风,1级,207,重度污染,5 64 | 2019-03-04,16℃,2℃,多云,东北风,1级,138,轻度污染,3 65 | 2019-03-05,17℃,4℃,多云~晴,西北风,3级,129,轻度污染,3 66 | 2019-03-06,11℃,-2℃,晴,西北风,3级,27,优,1 67 | 2019-03-07,13℃,-1℃,晴,西南风,2级,36,优,1 68 | 2019-03-08,13℃,3℃,多云,西南风,2级,82,良,2 69 | 2019-03-09,12℃,2℃,阴~多云,东北风,2级,109,轻度污染,3 70 | 2019-03-10,13℃,2℃,小雨~多云,东北风,2级,141,轻度污染,3 71 | 2019-03-11,16℃,1℃,晴,西北风,3级,54,良,2 72 | 2019-03-12,12℃,1℃,晴,西北风,3级,29,优,1 73 | 2019-03-13,16℃,2℃,多云,西北风,2级,31,优,1 74 | 2019-03-14,15℃,4℃,多云,西北风,3级,34,优,1 75 | 2019-03-15,13℃,0℃,多云,西北风,3级,45,优,1 76 | 2019-03-16,19℃,2℃,晴,西北风,2级,55,良,2 77 | 2019-03-17,20℃,4℃,晴,西南风,2级,74,良,2 78 | 2019-03-18,21℃,6℃,多云~晴,东南风,1级,126,轻度污染,3 79 | 2019-03-19,25℃,11℃,多云,西南风,2级,172,中度污染,4 80 | 2019-03-20,17℃,6℃,小雨,西南风,2级,96,良,2 81 | 2019-03-21,13℃,0℃,晴,西北风,4级,31,优,1 82 | 2019-03-22,15℃,3℃,晴,西北风,3级,32,优,1 83 | 2019-03-23,12℃,2℃,晴,西北风,3级,34,优,1 84 | 2019-03-24,19℃,4℃,晴,西南风,2级,69,良,2 85 | 2019-03-25,22℃,5℃,晴,西北风,2级,55,良,2 86 | 2019-03-26,19℃,4℃,晴,东北风,2级,81,良,2 87 | 2019-03-27,21℃,4℃,多云,东北风,2级,104,轻度污染,3 88 | 2019-03-28,11℃,2℃,多云,东南风,3级,61,良,2 89 | 2019-03-29,13℃,4℃,多云~晴,西北风,3级,76,良,2 90 | 2019-03-30,13℃,1℃,晴,西北风,4级,27,优,1 91 | 2019-03-31,16℃,2℃,多云~晴,西北风,2级,32,优,1 92 | 2019-04-01,16℃,4℃,晴,东南风,2级,37,优,1 93 | 2019-04-02,19℃,3℃,晴,东南风,2级,56,良,2 94 | 2019-04-03,21℃,6℃,晴,西南风,2级,78,良,2 95 | 2019-04-04,28℃,9℃,多云,西北风,3级,105,轻度污染,3 96 | 2019-04-05,21℃,8℃,晴~多云,东南风,3级,203,重度污染,5 97 | 2019-04-06,20℃,6℃,多云,东北风,2级,135,轻度污染,3 98 | 2019-04-07,19℃,7℃,多云,东南风,2级,78,良,2 99 | 2019-04-08,17℃,4℃,多云~小雨,东南风,2级,64,良,2 100 | 2019-04-09,9℃,2℃,小雨~多云,东北风,2级,39,优,1 101 | 2019-04-10,18℃,9℃,多云,西北风,2级,41,优,1 102 | 2019-04-11,19℃,6℃,多云,西南风,2级,66,良,2 103 | 2019-04-12,22℃,9℃,多云,西南风,3级,82,良,2 104 | 2019-04-13,23℃,7℃,多云,东北风,2级,120,轻度污染,3 105 | 2019-04-14,23℃,8℃,晴,西南风,3级,54,良,2 106 | 2019-04-15,26℃,11℃,多云,西南风,2级,76,良,2 107 | 2019-04-16,26℃,12℃,晴,东南风,2级,98,良,2 108 | 2019-04-17,28℃,16℃,霾~多云,西南风,3级,138,轻度污染,3 109 | 2019-04-18,24℃,10℃,多云,东北风,3级,121,轻度污染,3 110 | 2019-04-19,17℃,10℃,多云~小雨,东南风,2级,62,良,2 111 | 2019-04-20,15℃,8℃,小雨~多云,东南风,1级,55,良,2 112 | 2019-04-21,22℃,8℃,晴,东南风,2级,112,轻度污染,3 113 | 2019-04-22,26℃,15℃,晴~多云,西南风,2级,129,轻度污染,3 114 | 2019-04-23,28℃,15℃,多云,东南风,2级,128,轻度污染,3 115 | 2019-04-24,19℃,9℃,小雨,东北风,3级,63,良,2 116 | 2019-04-25,18℃,8℃,多云,东北风,2级,29,优,1 117 | 2019-04-26,21℃,10℃,晴~多云,西南风,2级,35,优,1 118 | 2019-04-27,16℃,6℃,小雨~多云,西南风,3级,57,良,2 119 | 2019-04-28,19℃,9℃,多云,西南风,2级,58,良,2 120 | 2019-04-29,23℃,13℃,多云,西南风,2级,113,轻度污染,3 121 | 2019-04-30,24℃,13℃,多云,西北风,3级,94,良,2 122 | 2019-05-01,27℃,10℃,晴,西北风,2级,39,优,1 123 | 2019-05-02,29℃,14℃,晴~多云,西南风,2级,54,良,2 124 | 2019-05-03,28℃,16℃,多云,西南风,2级,79,良,2 125 | 2019-05-04,26℃,15℃,阴~小雨,西南风,2级,80,良,2 126 | 2019-05-05,23℃,10℃,多云~晴,东北风,4级,50,优,1 127 | 2019-05-06,25℃,10℃,晴,西北风,2级,39,优,1 128 | 2019-05-07,28℃,14℃,晴~多云,西南风,2级,50,优,1 129 | 2019-05-08,25℃,13℃,多云~晴,西南风,2级,70,良,2 130 | 2019-05-09,30℃,14℃,晴,西北风,2级,64,良,2 131 | 2019-05-10,30℃,14℃,多云,东南风,2级,87,良,2 132 | 2019-05-11,29℃,14℃,多云,东南风,2级,104,轻度污染,3 133 | 2019-05-12,26℃,12℃,雷阵雨~晴,西北风,2级,161,中度污染,4 134 | 2019-05-13,26℃,12℃,晴,西南风,3级,58,良,2 135 | 2019-05-14,30℃,16℃,多云,东南风,2级,85,良,2 136 | 2019-05-15,28℃,16℃,雷阵雨~多云,西南风,2级,133,轻度污染,3 137 | 2019-05-16,32℃,17℃,晴,东南风,2级,105,轻度污染,3 138 | 2019-05-17,33℃,20℃,多云~阴,东南风,2级,118,轻度污染,3 139 | 2019-05-18,29℃,18℃,阴~小雨,东南风,2级,56,良,2 140 | 2019-05-19,28℃,13℃,多云~晴,西北风,4级,62,良,2 141 | 2019-05-20,26℃,13℃,晴,西北风,4级,45,优,1 142 | 2019-05-21,31℃,14℃,晴,西北风,2级,40,优,1 143 | 2019-05-22,35℃,18℃,晴,西北风,2级,54,良,2 144 | 2019-05-23,37℃,21℃,晴,东南风,2级,85,良,2 145 | 2019-05-24,35℃,21℃,多云,西南风,3级,88,良,2 146 | 2019-05-25,35℃,20℃,多云~雷阵雨,东南风,2级,99,良,2 147 | 2019-05-26,24℃,17℃,中雨~多云,东北风,3级,59,良,2 148 | 2019-05-27,29℃,15℃,晴,西北风,3级,30,优,1 149 | 2019-05-28,32℃,17℃,晴,西北风,2级,39,优,1 150 | 2019-05-29,33℃,22℃,晴~多云,东南风,2级,63,良,2 151 | 2019-05-30,30℃,15℃,多云~晴,西北风,3级,52,良,2 152 | 2019-05-31,30℃,19℃,晴~多云,西北风,2级,34,优,1 153 | 2019-06-01,30℃,18℃,雷阵雨~多云,东南风,2级,66,良,2 154 | 2019-06-02,32℃,19℃,多云,东南风,2级,75,良,2 155 | 2019-06-03,34℃,20℃,多云,北风,2级,62,良,2 156 | 2019-06-04,28℃,19℃,雷阵雨~小雨,东南风,2级,82,良,2 157 | 2019-06-05,31℃,19℃,多云~小雨,东南风,2级,69,良,2 158 | 2019-06-06,26℃,18℃,小雨~多云,东南风,2级,70,良,2 159 | 2019-06-07,31℃,21℃,多云~雷阵雨,西南风,2级,82,良,2 160 | 2019-06-08,34℃,20℃,多云~晴,西北风,2级,65,良,2 161 | 2019-06-09,31℃,18℃,多云~晴,东北风,3级,28,优,1 162 | 2019-06-10,33℃,18℃,晴,东北风,2级,61,良,2 163 | 2019-06-11,32℃,20℃,晴~多云,东南风,2级,75,良,2 164 | 2019-06-12,33℃,22℃,多云~雷阵雨,东南风,2级,69,良,2 165 | 2019-06-13,29℃,20℃,雷阵雨~晴,东北风,2级,58,良,2 166 | 2019-06-14,35℃,20℃,晴,东北风,2级,59,良,2 167 | 2019-06-15,32℃,19℃,多云~雷阵雨,东南风,2级,56,良,2 168 | 2019-06-16,25℃,18℃,雷阵雨~多云,东南风,2级,38,优,1 169 | 2019-06-17,29℃,20℃,多云,西南风,2级,72,良,2 170 | 2019-06-18,33℃,22℃,雷阵雨,西南风,2级,104,轻度污染,3 171 | 2019-06-19,33℃,22℃,多云,东南风,2级,105,轻度污染,3 172 | 2019-06-20,36℃,23℃,多云~晴,东南风,2级,103,轻度污染,3 173 | 2019-06-21,32℃,21℃,多云,东南风,2级,85,良,2 174 | 2019-06-22,34℃,22℃,晴,西南风,2级,59,良,2 175 | 2019-06-23,35℃,23℃,晴~多云,东南风,2级,93,良,2 176 | 2019-06-24,36℃,24℃,多云,东南风,2级,86,良,2 177 | 2019-06-25,36℃,24℃,多云,东南风,2级,98,良,2 178 | 2019-06-26,35℃,22℃,多云,东南风,2级,90,良,2 179 | 2019-06-27,33℃,23℃,多云~雷阵雨,西北风,2级,87,良,2 180 | 2019-06-28,32℃,22℃,多云,西南风,3级,56,良,2 181 | 2019-06-29,35℃,23℃,多云,西北风,3级,40,优,1 182 | 2019-06-30,32℃,21℃,晴,西北风,3级,27,优,1 183 | 2019-07-01,35℃,23℃,晴~多云,东北风,1级,36,优,1 184 | 2019-07-02,35℃,23℃,多云~晴,东南风,2级,64,良,2 185 | 2019-07-03,36℃,24℃,晴,东南风,1级,56,良,2 186 | 2019-07-04,38℃,25℃,晴~多云,西南风,2级,89,良,2 187 | 2019-07-05,33℃,22℃,雷阵雨,东北风,2级,53,良,2 188 | 2019-07-06,26℃,21℃,雷阵雨~中雨,东北风,3级,23,优,1 189 | 2019-07-07,28℃,20℃,小雨~多云,东北风,3级,28,优,1 190 | 2019-07-08,30℃,22℃,多云,东南风,2级,33,优,1 191 | 2019-07-09,29℃,21℃,雷阵雨~中雨,东南风,2级,47,优,1 192 | 2019-07-10,28℃,19℃,雷阵雨~多云,东北风,2级,66,良,2 193 | 2019-07-11,29℃,21℃,多云,东南风,2级,51,良,2 194 | 2019-07-12,33℃,22℃,多云~晴,西南风,1级,62,良,2 195 | 2019-07-13,33℃,23℃,雷阵雨~多云,东北风,1级,86,良,2 196 | 2019-07-14,33℃,23℃,雷阵雨~多云,东南风,2级,49,优,1 197 | 2019-07-15,35℃,24℃,晴~多云,东南风,2级,94,良,2 198 | 2019-07-16,33℃,24℃,多云~雷阵雨,东南风,2级,64,良,2 199 | 2019-07-17,30℃,23℃,雷阵雨,东南风,2级,67,良,2 200 | 2019-07-18,32℃,24℃,阴~多云,东南风,2级,89,良,2 201 | 2019-07-19,33℃,25℃,多云~雷阵雨,东南风,2级,81,良,2 202 | 2019-07-20,30℃,24℃,雷阵雨~多云,东南风,2级,80,良,2 203 | 2019-07-21,36℃,27℃,晴~多云,西南风,2级,102,轻度污染,3 204 | 2019-07-22,35℃,25℃,多云~中雨,西南风,2级,106,轻度污染,3 205 | 2019-07-23,34℃,25℃,晴,西南风,2级,58,良,2 206 | 2019-07-24,36℃,27℃,多云~雷阵雨,西南风,2级,64,良,2 207 | 2019-07-25,35℃,26℃,多云~晴,西南风,2级,66,良,2 208 | 2019-07-26,37℃,27℃,晴,西南风,2级,73,良,2 209 | 2019-07-27,36℃,27℃,多云,东南风,2级,133,轻度污染,3 210 | 2019-07-28,35℃,26℃,多云~雷阵雨,东南风,2级,77,良,2 211 | 2019-07-29,29℃,23℃,中雨~多云,东北风,2级,30,优,1 212 | 2019-07-30,34℃,24℃,多云~晴,西南风,2级,54,良,2 213 | 2019-07-31,35℃,24℃,晴~多云,东北风,2级,62,良,2 214 | 2019-08-01,32℃,24℃,中雨~雷阵雨,东南风,2级,74,良,2 215 | 2019-08-02,30℃,24℃,雷阵雨~小雨,东南风,2级,53,良,2 216 | 2019-08-03,31℃,24℃,阴,东南风,2级,62,良,2 217 | 2019-08-04,29℃,23℃,雷阵雨,东南风,1级,54,良,2 218 | 2019-08-05,28℃,24℃,中雨~雷阵雨,东南风,2级,48,优,1 219 | 2019-08-06,30℃,24℃,雷阵雨,东南风,2级,61,良,2 220 | 2019-08-07,29℃,23℃,雷阵雨,东南风,2级,39,优,1 221 | 2019-08-08,32℃,25℃,多云~雷阵雨,东南风,2级,53,良,2 222 | 2019-08-09,30℃,23℃,雷阵雨~中雨,西南风,2级,65,良,2 223 | 2019-08-10,29℃,23℃,雷阵雨,东南风,2级,32,优,1 224 | 2019-08-11,28℃,24℃,中雨~小雨,东北风,2级,30,优,1 225 | 2019-08-12,30℃,23℃,中雨~小雨,东北风,3级,22,优,1 226 | 2019-08-13,31℃,22℃,阴~多云,西北风,2级,20,优,1 227 | 2019-08-14,32℃,21℃,多云~晴,东南风,2级,32,优,1 228 | 2019-08-15,32℃,22℃,雷阵雨~中雨,西南风,2级,49,优,1 229 | 2019-08-16,31℃,22℃,晴,西北风,3级,27,优,1 230 | 2019-08-17,31℃,19℃,晴,西北风,3级,26,优,1 231 | 2019-08-18,31℃,21℃,晴,西南风,2级,42,优,1 232 | 2019-08-19,31℃,22℃,多云,西南风,2级,75,良,2 233 | 2019-08-20,27℃,19℃,小雨~多云,东南风,2级,71,良,2 234 | 2019-08-21,31℃,21℃,晴,西北风,2级,46,优,1 235 | 2019-08-22,32℃,20℃,晴~多云,西北风,2级,34,优,1 236 | 2019-08-23,30℃,19℃,多云,西北风,2级,33,优,1 237 | 2019-08-24,30℃,18℃,晴,西南风,2级,50,优,1 238 | 2019-08-25,30℃,20℃,晴~多云,西南风,2级,53,良,2 239 | 2019-08-26,29℃,19℃,多云,西南风,2级,94,良,2 240 | 2019-08-27,33℃,20℃,晴,西北风,2级,58,良,2 241 | 2019-08-28,31℃,20℃,多云~晴,西北风,3级,26,优,1 242 | 2019-08-29,30℃,20℃,多云~晴,西北风,3级,21,优,1 243 | 2019-08-30,30℃,18℃,晴,西北风,2级,25,优,1 244 | 2019-08-31,32℃,18℃,晴,东南风,2级,42,优,1 245 | 2019-09-01,33℃,19℃,多云~晴,西南风,2级,56,良,2 246 | 2019-09-02,34℃,20℃,晴,南风,2级,67,良,2 247 | 2019-09-03,33℃,20℃,晴,东南风,2级,88,良,2 248 | 2019-09-04,32℃,19℃,晴,东南风,2级,91,良,2 249 | 2019-09-05,33℃,20℃,晴,东南风,2级,82,良,2 250 | 2019-09-06,33℃,20℃,晴,东南风,1级,86,良,2 251 | 2019-09-07,34℃,21℃,晴,西南风,2级,90,良,2 252 | 2019-09-08,35℃,22℃,晴~多云,东北风,2级,71,良,2 253 | 2019-09-09,32℃,21℃,小雨,东北风,2级,97,良,2 254 | 2019-09-10,25℃,18℃,小雨~阴,东北风,2级,22,优,1 255 | 2019-09-11,24℃,18℃,多云,西南风,2级,26,优,1 256 | 2019-09-12,25℃,18℃,阴~中雨,西南风,2级,31,优,1 257 | 2019-09-13,26℃,18℃,小雨~多云,西北风,2级,42,优,1 258 | 2019-09-14,29℃,17℃,晴~多云,西南风,2级,29,优,1 259 | 2019-09-15,28℃,17℃,多云,西南风,2级,51,良,2 260 | 2019-09-16,26℃,17℃,多云,东南风,2级,43,优,1 261 | 2019-09-17,28℃,16℃,多云~晴,西南风,2级,55,良,2 262 | 2019-09-18,24℃,14℃,晴~多云,东南风,2级,26,优,1 263 | 2019-09-19,25℃,16℃,多云~阴,西南风,1级,56,良,2 264 | 2019-09-20,27℃,16℃,多云,西北风,1级,61,良,2 265 | 2019-09-21,27℃,16℃,多云~晴,东北风,2级,88,良,2 266 | 2019-09-22,27℃,16℃,晴,东南风,1级,116,轻度污染,3 267 | 2019-09-23,30℃,17℃,晴,西北风,2级,58,良,2 268 | 2019-09-24,31℃,15℃,晴,东北风,2级,38,优,1 269 | 2019-09-25,31℃,16℃,晴,西南风,2级,54,良,2 270 | 2019-09-26,30℃,15℃,晴,东南风,1级,64,良,2 271 | 2019-09-27,29℃,15℃,晴,东南风,2级,79,良,2 272 | 2019-09-28,30℃,17℃,晴,西南风,1级,84,良,2 273 | 2019-09-29,29℃,18℃,多云,东南风,1级,95,良,2 274 | 2019-09-30,30℃,19℃,多云~晴,西南风,2级,104,轻度污染,3 275 | 2019-10-01,30℃,20℃,多云,西南风,2级,84,良,2 276 | 2019-10-02,29℃,17℃,晴~多云,东南风,2级,74,良,2 277 | 2019-10-03,29℃,13℃,多云~小雨,东南风,2级,86,良,2 278 | 2019-10-04,15℃,9℃,小雨~晴,东南风,2级,34,优,1 279 | 2019-10-05,19℃,9℃,晴~多云,东北风,2级,17,优,1 280 | 2019-10-06,19℃,9℃,多云,西南风,2级,34,优,1 281 | 2019-10-07,24℃,10℃,晴,西北风,2级,64,良,2 282 | 2019-10-08,20℃,9℃,晴,西北风,3级,26,优,1 283 | 2019-10-09,22℃,11℃,多云,西南风,2级,55,良,2 284 | 2019-10-10,22℃,12℃,多云,东南风,2级,63,良,2 285 | 2019-10-11,18℃,13℃,阴~多云,东南风,2级,62,良,2 286 | 2019-10-12,18℃,9℃,多云~小雨,东南风,2级,59,良,2 287 | 2019-10-13,12℃,5℃,小雨~多云,东南风,2级,52,良,2 288 | 2019-10-14,16℃,4℃,晴,西北风,2级,22,优,1 289 | 2019-10-15,17℃,6℃,晴~多云,西南风,1级,35,优,1 290 | 2019-10-16,15℃,9℃,阴~小雨,西南风,2级,48,优,1 291 | 2019-10-17,14℃,7℃,小雨~多云,东南风,1级,80,良,2 292 | 2019-10-18,18℃,7℃,多云,西南风,1级,83,良,2 293 | 2019-10-19,20℃,10℃,多云,西南风,1级,165,中度污染,4 294 | 2019-10-20,22℃,7℃,晴,西北风,3级,148,轻度污染,3 295 | 2019-10-21,19℃,6℃,晴,东南风,2级,45,优,1 296 | 2019-10-22,20℃,7℃,晴,东北风,1级,77,良,2 297 | 2019-10-23,21℃,11℃,多云,东北风,1级,104,轻度污染,3 298 | 2019-10-24,16℃,7℃,小雨~多云,西北风,2级,108,轻度污染,3 299 | 2019-10-25,14℃,2℃,晴,西北风,3级,17,优,1 300 | 2019-10-26,16℃,3℃,晴,西南风,2级,45,优,1 301 | 2019-10-27,18℃,5℃,晴~多云,西南风,1级,69,良,2 302 | 2019-10-28,15℃,2℃,晴,西北风,4级,128,轻度污染,3 303 | 2019-10-29,16℃,3℃,晴,西南风,1级,64,良,2 304 | 2019-10-30,20℃,5℃,晴,西南风,1级,83,良,2 305 | 2019-10-31,22℃,4℃,晴,东北风,2级,70,良,2 306 | 2019-11-01,18℃,8℃,多云~小雨,东南风,2级,65,良,2 307 | 2019-11-02,13℃,8℃,小雨,东北风,1级,53,良,2 308 | 2019-11-03,14℃,4℃,多云~晴,东南风,2级,53,良,2 309 | 2019-11-04,16℃,5℃,晴,西南风,1级,70,良,2 310 | 2019-11-05,16℃,6℃,晴~多云,东南风,2级,76,良,2 311 | 2019-11-06,16℃,5℃,多云~晴,东南风,1级,66,良,2 312 | 2019-11-07,12℃,1℃,晴,东南风,2级,53,良,2 313 | 2019-11-08,15℃,2℃,晴~多云,西北风,1级,65,良,2 314 | 2019-11-09,14℃,6℃,多云~中雨,东北风,1级,109,轻度污染,3 315 | 2019-11-10,17℃,6℃,多云~晴,西北风,4级,90,良,2 316 | 2019-11-11,16℃,4℃,晴,西北风,2级,48,优,1 317 | 2019-11-12,18℃,5℃,多云,西北风,1级,80,良,2 318 | 2019-11-13,8℃,-4℃,晴,西北风,4级,51,良,2 319 | 2019-11-14,10℃,-2℃,晴,东南风,1级,51,良,2 320 | 2019-11-15,9℃,1℃,晴,东南风,2级,64,良,2 321 | 2019-11-16,9℃,4℃,多云~小雨,东南风,2级,65,良,2 322 | 2019-11-17,12℃,-4℃,多云~晴,西北风,3级,158,中度污染,4 323 | 2019-11-18,4℃,-5℃,晴,西北风,3级,77,良,2 324 | 2019-11-19,7℃,-3℃,多云,西南风,2级,56,良,2 325 | 2019-11-20,7℃,-2℃,晴,东北风,1级,89,良,2 326 | 2019-11-21,9℃,-1℃,晴~多云,东北风,1级,115,轻度污染,3 327 | 2019-11-22,10℃,2℃,多云~阴,东北风,1级,178,中度污染,4 328 | 2019-11-23,12℃,4℃,阴~多云,西北风,2级,190,中度污染,4 329 | 2019-11-24,6℃,-5℃,晴,西北风,4级,30,优,1 330 | 2019-11-25,3℃,-5℃,晴,西南风,2级,27,优,1 331 | 2019-11-26,5℃,-4℃,晴,西北风,1级,64,良,2 332 | 2019-11-27,4℃,-6℃,晴,东北风,2级,26,优,1 333 | 2019-11-28,3℃,-5℃,晴~多云,东北风,1级,59,良,2 334 | 2019-11-29,3℃,-4℃,小雪,东南风,1级,76,良,2 335 | 2019-11-30,5℃,-5℃,多云~晴,西北风,2级,74,良,2 336 | 2019-12-01,4℃,-5℃,晴,西北风,2级,32,优,1 337 | 2019-12-02,4℃,-5℃,晴,西南风,2级,25,优,1 338 | 2019-12-03,7℃,-4℃,晴,西北风,2级,45,优,1 339 | 2019-12-04,8℃,-5℃,晴,西北风,2级,30,优,1 340 | 2019-12-05,2℃,-6℃,晴,东北风,2级,37,优,1 341 | 2019-12-06,4℃,-5℃,晴,西北风,1级,73,良,2 342 | 2019-12-07,6℃,-6℃,晴~多云,东北风,1级,66,良,2 343 | 2019-12-08,5℃,-5℃,多云,东北风,1级,181,中度污染,4 344 | 2019-12-09,3℃,-5℃,霾~雾,西北风,1级,224,重度污染,5 345 | 2019-12-10,9℃,-3℃,雾~晴,西北风,3级,148,轻度污染,3 346 | 2019-12-11,4℃,-6℃,晴,西北风,3级,27,优,1 347 | 2019-12-12,5℃,-5℃,晴,西北风,1级,35,优,1 348 | 2019-12-13,10℃,-5℃,晴,西北风,2级,48,优,1 349 | 2019-12-14,5℃,-3℃,晴~多云,东北风,1级,24,优,1 350 | 2019-12-15,3℃,-2℃,多云~中雪,东北风,1级,67,良,2 351 | 2019-12-16,2℃,-4℃,小雪~多云,东北风,1级,91,良,2 352 | 2019-12-17,6℃,-7℃,晴,西北风,3级,25,优,1 353 | 2019-12-18,2℃,-6℃,晴,东北风,1级,26,优,1 354 | 2019-12-19,2℃,-9℃,晴,西北风,3级,27,优,1 355 | 2019-12-20,3℃,-7℃,晴,东北风,1级,33,优,1 356 | 2019-12-21,4℃,-6℃,多云,东北风,1级,63,良,2 357 | 2019-12-22,5℃,-5℃,多云~晴,东北风,1级,90,良,2 358 | 2019-12-23,3℃,-4℃,多云~阴,东北风,2级,59,良,2 359 | 2019-12-24,1℃,-6℃,小雪~多云,东南风,1级,110,轻度污染,3 360 | 2019-12-25,5℃,-6℃,多云,东北风,2级,85,良,2 361 | 2019-12-26,4℃,-7℃,多云~晴,西北风,2级,41,优,1 362 | 2019-12-27,4℃,-6℃,晴,东北风,1级,69,良,2 363 | 2019-12-28,3℃,-7℃,晴~多云,东北风,1级,100,良,2 364 | 2019-12-29,5℃,-7℃,多云~晴,西北风,3级,133,轻度污染,3 365 | 2019-12-30,-5℃,-12℃,晴,西北风,4级,37,优,1 366 | 2019-12-31,-3℃,-10℃,晴,西北风,1级,36,优,1 367 | -------------------------------------------------------------------------------- /datas/boston-house-prices/Index: -------------------------------------------------------------------------------- 1 | Index of housing 2 | 3 | 02 Dec 1996 114 Index 4 | 07 Jul 1993 49082 housing.data 5 | 07 Jul 1993 2080 housing.names 6 | -------------------------------------------------------------------------------- /datas/boston-house-prices/housing.names: -------------------------------------------------------------------------------- 1 | 1. Title: Boston Housing Data 2 | 3 | 2. Sources: 4 | (a) Origin: This dataset was taken from the StatLib library which is 5 | maintained at Carnegie Mellon University. 6 | (b) Creator: Harrison, D. and Rubinfeld, D.L. 'Hedonic prices and the 7 | demand for clean air', J. Environ. Economics & Management, 8 | vol.5, 81-102, 1978. 9 | (c) Date: July 7, 1993 10 | 11 | 3. Past Usage: 12 | - Used in Belsley, Kuh & Welsch, 'Regression diagnostics ...', Wiley, 13 | 1980. N.B. Various transformations are used in the table on 14 | pages 244-261. 15 | - Quinlan,R. (1993). Combining Instance-Based and Model-Based Learning. 16 | In Proceedings on the Tenth International Conference of Machine 17 | Learning, 236-243, University of Massachusetts, Amherst. Morgan 18 | Kaufmann. 19 | 20 | 4. Relevant Information: 21 | 22 | Concerns housing values in suburbs of Boston. 23 | 24 | 5. Number of Instances: 506 25 | 26 | 6. Number of Attributes: 13 continuous attributes (including "class" 27 | attribute "MEDV"), 1 binary-valued attribute. 28 | 29 | 7. Attribute Information: 30 | 31 | 1. CRIM per capita crime rate by town 32 | 2. ZN proportion of residential land zoned for lots over 33 | 25,000 sq.ft. 34 | 3. INDUS proportion of non-retail business acres per town 35 | 4. CHAS Charles River dummy variable (= 1 if tract bounds 36 | river; 0 otherwise) 37 | 5. NOX nitric oxides concentration (parts per 10 million) 38 | 6. RM average number of rooms per dwelling 39 | 7. AGE proportion of owner-occupied units built prior to 1940 40 | 8. DIS weighted distances to five Boston employment centres 41 | 9. RAD index of accessibility to radial highways 42 | 10. TAX full-value property-tax rate per $10,000 43 | 11. PTRATIO pupil-teacher ratio by town 44 | 12. B 1000(Bk - 0.63)^2 where Bk is the proportion of blacks 45 | by town 46 | 13. LSTAT % lower status of the population 47 | 14. MEDV Median value of owner-occupied homes in $1000's 48 | 49 | 8. Missing Attribute Values: None. 50 | 51 | 52 | 53 | -------------------------------------------------------------------------------- /datas/boston-house-prices/housing.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peiss/ant-learn-visualization/a7809f8a49bb31054ab59efb0aaf98022b412ab0/datas/boston-house-prices/housing.xlsx -------------------------------------------------------------------------------- /datas/boston-house-prices/数据源.txt: -------------------------------------------------------------------------------- 1 | 下载链接: 2 | 3 | https://archive.ics.uci.edu/ml/machine-learning-databases/housing/ 4 | -------------------------------------------------------------------------------- /datas/ecommerce-website-funnel-analysis/payment_confirmation_table.csv: -------------------------------------------------------------------------------- 1 | "user_id","page" 2 | 123100,"payment_confirmation_page" 3 | 704999,"payment_confirmation_page" 4 | 407188,"payment_confirmation_page" 5 | 538348,"payment_confirmation_page" 6 | 841681,"payment_confirmation_page" 7 | 820062,"payment_confirmation_page" 8 | 365738,"payment_confirmation_page" 9 | 994662,"payment_confirmation_page" 10 | 898109,"payment_confirmation_page" 11 | 615140,"payment_confirmation_page" 12 | 95551,"payment_confirmation_page" 13 | 13830,"payment_confirmation_page" 14 | 594960,"payment_confirmation_page" 15 | 940714,"payment_confirmation_page" 16 | 379877,"payment_confirmation_page" 17 | 205268,"payment_confirmation_page" 18 | 93580,"payment_confirmation_page" 19 | 100016,"payment_confirmation_page" 20 | 28812,"payment_confirmation_page" 21 | 294363,"payment_confirmation_page" 22 | 694836,"payment_confirmation_page" 23 | 97026,"payment_confirmation_page" 24 | 801852,"payment_confirmation_page" 25 | 392514,"payment_confirmation_page" 26 | 495450,"payment_confirmation_page" 27 | 462226,"payment_confirmation_page" 28 | 822237,"payment_confirmation_page" 29 | 427569,"payment_confirmation_page" 30 | 724605,"payment_confirmation_page" 31 | 703237,"payment_confirmation_page" 32 | 166056,"payment_confirmation_page" 33 | 950777,"payment_confirmation_page" 34 | 88119,"payment_confirmation_page" 35 | 435639,"payment_confirmation_page" 36 | 999315,"payment_confirmation_page" 37 | 731698,"payment_confirmation_page" 38 | 320723,"payment_confirmation_page" 39 | 121010,"payment_confirmation_page" 40 | 757092,"payment_confirmation_page" 41 | 370509,"payment_confirmation_page" 42 | 568670,"payment_confirmation_page" 43 | 164029,"payment_confirmation_page" 44 | 58959,"payment_confirmation_page" 45 | 761027,"payment_confirmation_page" 46 | 663718,"payment_confirmation_page" 47 | 706843,"payment_confirmation_page" 48 | 559850,"payment_confirmation_page" 49 | 367520,"payment_confirmation_page" 50 | 597672,"payment_confirmation_page" 51 | 790254,"payment_confirmation_page" 52 | 60704,"payment_confirmation_page" 53 | 201722,"payment_confirmation_page" 54 | 308049,"payment_confirmation_page" 55 | 333347,"payment_confirmation_page" 56 | 190121,"payment_confirmation_page" 57 | 518777,"payment_confirmation_page" 58 | 707216,"payment_confirmation_page" 59 | 621187,"payment_confirmation_page" 60 | 280705,"payment_confirmation_page" 61 | 783716,"payment_confirmation_page" 62 | 341158,"payment_confirmation_page" 63 | 581956,"payment_confirmation_page" 64 | 173995,"payment_confirmation_page" 65 | 30217,"payment_confirmation_page" 66 | 331300,"payment_confirmation_page" 67 | 486505,"payment_confirmation_page" 68 | 402418,"payment_confirmation_page" 69 | 34018,"payment_confirmation_page" 70 | 459045,"payment_confirmation_page" 71 | 400941,"payment_confirmation_page" 72 | 717640,"payment_confirmation_page" 73 | 930435,"payment_confirmation_page" 74 | 526427,"payment_confirmation_page" 75 | 194396,"payment_confirmation_page" 76 | 172550,"payment_confirmation_page" 77 | 585325,"payment_confirmation_page" 78 | 401537,"payment_confirmation_page" 79 | 31866,"payment_confirmation_page" 80 | 831081,"payment_confirmation_page" 81 | 504018,"payment_confirmation_page" 82 | 605466,"payment_confirmation_page" 83 | 268582,"payment_confirmation_page" 84 | 146837,"payment_confirmation_page" 85 | 299683,"payment_confirmation_page" 86 | 190699,"payment_confirmation_page" 87 | 29666,"payment_confirmation_page" 88 | 92180,"payment_confirmation_page" 89 | 910539,"payment_confirmation_page" 90 | 608962,"payment_confirmation_page" 91 | 107058,"payment_confirmation_page" 92 | 146341,"payment_confirmation_page" 93 | 303801,"payment_confirmation_page" 94 | 443377,"payment_confirmation_page" 95 | 549121,"payment_confirmation_page" 96 | 258146,"payment_confirmation_page" 97 | 79913,"payment_confirmation_page" 98 | 318400,"payment_confirmation_page" 99 | 316881,"payment_confirmation_page" 100 | 380093,"payment_confirmation_page" 101 | 723542,"payment_confirmation_page" 102 | 561949,"payment_confirmation_page" 103 | 554826,"payment_confirmation_page" 104 | 262446,"payment_confirmation_page" 105 | 487247,"payment_confirmation_page" 106 | 385027,"payment_confirmation_page" 107 | 255699,"payment_confirmation_page" 108 | 878813,"payment_confirmation_page" 109 | 51269,"payment_confirmation_page" 110 | 806139,"payment_confirmation_page" 111 | 435925,"payment_confirmation_page" 112 | 338722,"payment_confirmation_page" 113 | 250112,"payment_confirmation_page" 114 | 706508,"payment_confirmation_page" 115 | 120040,"payment_confirmation_page" 116 | 281391,"payment_confirmation_page" 117 | 132536,"payment_confirmation_page" 118 | 373207,"payment_confirmation_page" 119 | 473150,"payment_confirmation_page" 120 | 271016,"payment_confirmation_page" 121 | 112136,"payment_confirmation_page" 122 | 298664,"payment_confirmation_page" 123 | 415219,"payment_confirmation_page" 124 | 674513,"payment_confirmation_page" 125 | 441411,"payment_confirmation_page" 126 | 944491,"payment_confirmation_page" 127 | 59583,"payment_confirmation_page" 128 | 804470,"payment_confirmation_page" 129 | 537845,"payment_confirmation_page" 130 | 734759,"payment_confirmation_page" 131 | 128910,"payment_confirmation_page" 132 | 582445,"payment_confirmation_page" 133 | 972956,"payment_confirmation_page" 134 | 758567,"payment_confirmation_page" 135 | 515725,"payment_confirmation_page" 136 | 330089,"payment_confirmation_page" 137 | 493077,"payment_confirmation_page" 138 | 397462,"payment_confirmation_page" 139 | 664260,"payment_confirmation_page" 140 | 263888,"payment_confirmation_page" 141 | 910504,"payment_confirmation_page" 142 | 849323,"payment_confirmation_page" 143 | 586259,"payment_confirmation_page" 144 | 775450,"payment_confirmation_page" 145 | 404903,"payment_confirmation_page" 146 | 813956,"payment_confirmation_page" 147 | 736250,"payment_confirmation_page" 148 | 812258,"payment_confirmation_page" 149 | 744742,"payment_confirmation_page" 150 | 541336,"payment_confirmation_page" 151 | 44679,"payment_confirmation_page" 152 | 827348,"payment_confirmation_page" 153 | 331768,"payment_confirmation_page" 154 | 611476,"payment_confirmation_page" 155 | 309350,"payment_confirmation_page" 156 | 949305,"payment_confirmation_page" 157 | 656950,"payment_confirmation_page" 158 | 77337,"payment_confirmation_page" 159 | 196016,"payment_confirmation_page" 160 | 530697,"payment_confirmation_page" 161 | 345248,"payment_confirmation_page" 162 | 733831,"payment_confirmation_page" 163 | 622779,"payment_confirmation_page" 164 | 129954,"payment_confirmation_page" 165 | 516381,"payment_confirmation_page" 166 | 482864,"payment_confirmation_page" 167 | 317940,"payment_confirmation_page" 168 | 201374,"payment_confirmation_page" 169 | 795005,"payment_confirmation_page" 170 | 791555,"payment_confirmation_page" 171 | 950703,"payment_confirmation_page" 172 | 403943,"payment_confirmation_page" 173 | 397157,"payment_confirmation_page" 174 | 540272,"payment_confirmation_page" 175 | 404655,"payment_confirmation_page" 176 | 461169,"payment_confirmation_page" 177 | 21080,"payment_confirmation_page" 178 | 119201,"payment_confirmation_page" 179 | 572478,"payment_confirmation_page" 180 | 445105,"payment_confirmation_page" 181 | 742194,"payment_confirmation_page" 182 | 500567,"payment_confirmation_page" 183 | 257083,"payment_confirmation_page" 184 | 287132,"payment_confirmation_page" 185 | 191576,"payment_confirmation_page" 186 | 699561,"payment_confirmation_page" 187 | 340286,"payment_confirmation_page" 188 | 407249,"payment_confirmation_page" 189 | 448390,"payment_confirmation_page" 190 | 590792,"payment_confirmation_page" 191 | 753854,"payment_confirmation_page" 192 | 396337,"payment_confirmation_page" 193 | 638830,"payment_confirmation_page" 194 | 667095,"payment_confirmation_page" 195 | 752530,"payment_confirmation_page" 196 | 589518,"payment_confirmation_page" 197 | 373557,"payment_confirmation_page" 198 | 535475,"payment_confirmation_page" 199 | 743798,"payment_confirmation_page" 200 | 941726,"payment_confirmation_page" 201 | 119742,"payment_confirmation_page" 202 | 654654,"payment_confirmation_page" 203 | 526109,"payment_confirmation_page" 204 | 169773,"payment_confirmation_page" 205 | 593170,"payment_confirmation_page" 206 | 800545,"payment_confirmation_page" 207 | 247128,"payment_confirmation_page" 208 | 308881,"payment_confirmation_page" 209 | 316337,"payment_confirmation_page" 210 | 677116,"payment_confirmation_page" 211 | 377893,"payment_confirmation_page" 212 | 666429,"payment_confirmation_page" 213 | 990959,"payment_confirmation_page" 214 | 720954,"payment_confirmation_page" 215 | 353905,"payment_confirmation_page" 216 | 830622,"payment_confirmation_page" 217 | 866605,"payment_confirmation_page" 218 | 738398,"payment_confirmation_page" 219 | 421083,"payment_confirmation_page" 220 | 558913,"payment_confirmation_page" 221 | 18898,"payment_confirmation_page" 222 | 111601,"payment_confirmation_page" 223 | 109824,"payment_confirmation_page" 224 | 504055,"payment_confirmation_page" 225 | 650659,"payment_confirmation_page" 226 | 464337,"payment_confirmation_page" 227 | 446198,"payment_confirmation_page" 228 | 89418,"payment_confirmation_page" 229 | 753438,"payment_confirmation_page" 230 | 893870,"payment_confirmation_page" 231 | 729089,"payment_confirmation_page" 232 | 985095,"payment_confirmation_page" 233 | 869943,"payment_confirmation_page" 234 | 348643,"payment_confirmation_page" 235 | 558802,"payment_confirmation_page" 236 | 452833,"payment_confirmation_page" 237 | 601551,"payment_confirmation_page" 238 | 97920,"payment_confirmation_page" 239 | 528989,"payment_confirmation_page" 240 | 491776,"payment_confirmation_page" 241 | 690233,"payment_confirmation_page" 242 | 380175,"payment_confirmation_page" 243 | 728281,"payment_confirmation_page" 244 | 226004,"payment_confirmation_page" 245 | 216558,"payment_confirmation_page" 246 | 362798,"payment_confirmation_page" 247 | 639065,"payment_confirmation_page" 248 | 896321,"payment_confirmation_page" 249 | 170212,"payment_confirmation_page" 250 | 116964,"payment_confirmation_page" 251 | 204498,"payment_confirmation_page" 252 | 254669,"payment_confirmation_page" 253 | 630919,"payment_confirmation_page" 254 | 607194,"payment_confirmation_page" 255 | 95691,"payment_confirmation_page" 256 | 190170,"payment_confirmation_page" 257 | 260404,"payment_confirmation_page" 258 | 248554,"payment_confirmation_page" 259 | 207777,"payment_confirmation_page" 260 | 847783,"payment_confirmation_page" 261 | 513639,"payment_confirmation_page" 262 | 989337,"payment_confirmation_page" 263 | 274773,"payment_confirmation_page" 264 | 339746,"payment_confirmation_page" 265 | 898153,"payment_confirmation_page" 266 | 395342,"payment_confirmation_page" 267 | 52580,"payment_confirmation_page" 268 | 248448,"payment_confirmation_page" 269 | 516634,"payment_confirmation_page" 270 | 582870,"payment_confirmation_page" 271 | 542275,"payment_confirmation_page" 272 | 551623,"payment_confirmation_page" 273 | 255702,"payment_confirmation_page" 274 | 314021,"payment_confirmation_page" 275 | 302844,"payment_confirmation_page" 276 | 122248,"payment_confirmation_page" 277 | 509584,"payment_confirmation_page" 278 | 204007,"payment_confirmation_page" 279 | 512969,"payment_confirmation_page" 280 | 606636,"payment_confirmation_page" 281 | 696859,"payment_confirmation_page" 282 | 712756,"payment_confirmation_page" 283 | 963370,"payment_confirmation_page" 284 | 969105,"payment_confirmation_page" 285 | 638894,"payment_confirmation_page" 286 | 939959,"payment_confirmation_page" 287 | 543231,"payment_confirmation_page" 288 | 740761,"payment_confirmation_page" 289 | 255228,"payment_confirmation_page" 290 | 435207,"payment_confirmation_page" 291 | 535329,"payment_confirmation_page" 292 | 208377,"payment_confirmation_page" 293 | 462584,"payment_confirmation_page" 294 | 187969,"payment_confirmation_page" 295 | 499856,"payment_confirmation_page" 296 | 637430,"payment_confirmation_page" 297 | 548887,"payment_confirmation_page" 298 | 229753,"payment_confirmation_page" 299 | 712132,"payment_confirmation_page" 300 | 575137,"payment_confirmation_page" 301 | 941876,"payment_confirmation_page" 302 | 102990,"payment_confirmation_page" 303 | 118869,"payment_confirmation_page" 304 | 659295,"payment_confirmation_page" 305 | 998450,"payment_confirmation_page" 306 | 816599,"payment_confirmation_page" 307 | 987427,"payment_confirmation_page" 308 | 283098,"payment_confirmation_page" 309 | 182641,"payment_confirmation_page" 310 | 419600,"payment_confirmation_page" 311 | 71809,"payment_confirmation_page" 312 | 166752,"payment_confirmation_page" 313 | 83158,"payment_confirmation_page" 314 | 274124,"payment_confirmation_page" 315 | 331618,"payment_confirmation_page" 316 | 140689,"payment_confirmation_page" 317 | 755867,"payment_confirmation_page" 318 | 811076,"payment_confirmation_page" 319 | 894357,"payment_confirmation_page" 320 | 546407,"payment_confirmation_page" 321 | 753770,"payment_confirmation_page" 322 | 392552,"payment_confirmation_page" 323 | 334507,"payment_confirmation_page" 324 | 876721,"payment_confirmation_page" 325 | 924781,"payment_confirmation_page" 326 | 189356,"payment_confirmation_page" 327 | 831902,"payment_confirmation_page" 328 | 182205,"payment_confirmation_page" 329 | 761846,"payment_confirmation_page" 330 | 122067,"payment_confirmation_page" 331 | 295654,"payment_confirmation_page" 332 | 337704,"payment_confirmation_page" 333 | 28088,"payment_confirmation_page" 334 | 808733,"payment_confirmation_page" 335 | 157202,"payment_confirmation_page" 336 | 768271,"payment_confirmation_page" 337 | 276166,"payment_confirmation_page" 338 | 398264,"payment_confirmation_page" 339 | 200120,"payment_confirmation_page" 340 | 561699,"payment_confirmation_page" 341 | 971840,"payment_confirmation_page" 342 | 778462,"payment_confirmation_page" 343 | 779623,"payment_confirmation_page" 344 | 780826,"payment_confirmation_page" 345 | 20486,"payment_confirmation_page" 346 | 517992,"payment_confirmation_page" 347 | 832554,"payment_confirmation_page" 348 | 452610,"payment_confirmation_page" 349 | 498864,"payment_confirmation_page" 350 | 887265,"payment_confirmation_page" 351 | 852145,"payment_confirmation_page" 352 | 177122,"payment_confirmation_page" 353 | 114597,"payment_confirmation_page" 354 | 255474,"payment_confirmation_page" 355 | 827328,"payment_confirmation_page" 356 | 366008,"payment_confirmation_page" 357 | 9477,"payment_confirmation_page" 358 | 370354,"payment_confirmation_page" 359 | 371719,"payment_confirmation_page" 360 | 319180,"payment_confirmation_page" 361 | 923746,"payment_confirmation_page" 362 | 930760,"payment_confirmation_page" 363 | 342803,"payment_confirmation_page" 364 | 433684,"payment_confirmation_page" 365 | 537852,"payment_confirmation_page" 366 | 933655,"payment_confirmation_page" 367 | 646417,"payment_confirmation_page" 368 | 802357,"payment_confirmation_page" 369 | 222999,"payment_confirmation_page" 370 | 110910,"payment_confirmation_page" 371 | 869691,"payment_confirmation_page" 372 | 689159,"payment_confirmation_page" 373 | 317174,"payment_confirmation_page" 374 | 271874,"payment_confirmation_page" 375 | 777123,"payment_confirmation_page" 376 | 433920,"payment_confirmation_page" 377 | 360196,"payment_confirmation_page" 378 | 259289,"payment_confirmation_page" 379 | 195110,"payment_confirmation_page" 380 | 47353,"payment_confirmation_page" 381 | 153716,"payment_confirmation_page" 382 | 792862,"payment_confirmation_page" 383 | 452331,"payment_confirmation_page" 384 | 882373,"payment_confirmation_page" 385 | 214674,"payment_confirmation_page" 386 | 941606,"payment_confirmation_page" 387 | 795953,"payment_confirmation_page" 388 | 967485,"payment_confirmation_page" 389 | 423926,"payment_confirmation_page" 390 | 391189,"payment_confirmation_page" 391 | 730515,"payment_confirmation_page" 392 | 66727,"payment_confirmation_page" 393 | 312862,"payment_confirmation_page" 394 | 930763,"payment_confirmation_page" 395 | 143291,"payment_confirmation_page" 396 | 344537,"payment_confirmation_page" 397 | 434620,"payment_confirmation_page" 398 | 41697,"payment_confirmation_page" 399 | 705035,"payment_confirmation_page" 400 | 547501,"payment_confirmation_page" 401 | 723260,"payment_confirmation_page" 402 | 4561,"payment_confirmation_page" 403 | 285405,"payment_confirmation_page" 404 | 644958,"payment_confirmation_page" 405 | 43283,"payment_confirmation_page" 406 | 747560,"payment_confirmation_page" 407 | 365874,"payment_confirmation_page" 408 | 682241,"payment_confirmation_page" 409 | 816118,"payment_confirmation_page" 410 | 854327,"payment_confirmation_page" 411 | 464724,"payment_confirmation_page" 412 | 57696,"payment_confirmation_page" 413 | 894052,"payment_confirmation_page" 414 | 911540,"payment_confirmation_page" 415 | 110742,"payment_confirmation_page" 416 | 638114,"payment_confirmation_page" 417 | 24398,"payment_confirmation_page" 418 | 446347,"payment_confirmation_page" 419 | 409001,"payment_confirmation_page" 420 | 400188,"payment_confirmation_page" 421 | 807606,"payment_confirmation_page" 422 | 71591,"payment_confirmation_page" 423 | 82165,"payment_confirmation_page" 424 | 71944,"payment_confirmation_page" 425 | 501216,"payment_confirmation_page" 426 | 288423,"payment_confirmation_page" 427 | 697493,"payment_confirmation_page" 428 | 567797,"payment_confirmation_page" 429 | 14647,"payment_confirmation_page" 430 | 467375,"payment_confirmation_page" 431 | 694807,"payment_confirmation_page" 432 | 460508,"payment_confirmation_page" 433 | 898285,"payment_confirmation_page" 434 | 995148,"payment_confirmation_page" 435 | 169165,"payment_confirmation_page" 436 | 38522,"payment_confirmation_page" 437 | 572199,"payment_confirmation_page" 438 | 604207,"payment_confirmation_page" 439 | 211983,"payment_confirmation_page" 440 | 779484,"payment_confirmation_page" 441 | 436153,"payment_confirmation_page" 442 | 340946,"payment_confirmation_page" 443 | 516732,"payment_confirmation_page" 444 | 86629,"payment_confirmation_page" 445 | 638892,"payment_confirmation_page" 446 | 131772,"payment_confirmation_page" 447 | 649539,"payment_confirmation_page" 448 | 234188,"payment_confirmation_page" 449 | 397473,"payment_confirmation_page" 450 | 860829,"payment_confirmation_page" 451 | 371291,"payment_confirmation_page" 452 | 263707,"payment_confirmation_page" 453 | 892101,"payment_confirmation_page" 454 | -------------------------------------------------------------------------------- /datas/ecommerce-website-funnel-analysis/readme.md: -------------------------------------------------------------------------------- 1 | 数据来自: 2 | https://www.kaggle.com/aerodinamicc/ecommerce-website-funnel-analysis 3 | 4 | ### Our problem 5 | 6 | We are looking at data from an e-commerce website. 7 | 8 | The site is very simple and has just 4 pages: 9 | * The first page is the home page. When you come to the site for the first time, you can only land on the home page as a first page. 10 | * From the home page, the user can perform a search and land on the search page. 11 | * From the search page, if the user clicks on a product, she will get to the payment page, where she is asked to provide payment information in order to buy that product. 12 | * If she does decide to buy, she ends up on the confirmation page 13 | 14 | 15 | The company CEO isn’t very happy with the volume of sales and, especially, of sales coming from new users. Therefore, she asked you to investigate whether there is something wrong in the conversion funnel or, in general, if you could suggest how conversion rate can be improved. 16 | 17 | 参考资料: 18 | -------------------------------------------------------------------------------- /datas/other_files/ant_boxplot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peiss/ant-learn-visualization/a7809f8a49bb31054ab59efb0aaf98022b412ab0/datas/other_files/ant_boxplot.png -------------------------------------------------------------------------------- /datas/other_files/boxplot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peiss/ant-learn-visualization/a7809f8a49bb31054ab59efb0aaf98022b412ab0/datas/other_files/boxplot.png -------------------------------------------------------------------------------- /datas/other_files/tuzhidian_boxplot.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peiss/ant-learn-visualization/a7809f8a49bb31054ab59efb0aaf98022b412ab0/datas/other_files/tuzhidian_boxplot.jpeg -------------------------------------------------------------------------------- /datas/服装销售数据.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peiss/ant-learn-visualization/a7809f8a49bb31054ab59efb0aaf98022b412ab0/datas/服装销售数据.xlsx -------------------------------------------------------------------------------- /flare.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "flare", 3 | "children": [ 4 | { 5 | "name": "analytics", 6 | "children": [ 7 | { 8 | "name": "cluster", 9 | "children": [ 10 | {"name": "AgglomerativeCluster", "value": 3938}, 11 | {"name": "CommunityStructure", "value": 3812}, 12 | {"name": "HierarchicalCluster", "value": 6714}, 13 | {"name": "MergeEdge", "value": 743} 14 | ] 15 | }, 16 | { 17 | "name": "graph", 18 | "children": [ 19 | {"name": "BetweennessCentrality", "value": 3534}, 20 | {"name": "LinkDistance", "value": 5731}, 21 | {"name": "MaxFlowMinCut", "value": 7840}, 22 | {"name": "ShortestPaths", "value": 5914}, 23 | {"name": "SpanningTree", "value": 3416} 24 | ] 25 | }, 26 | { 27 | "name": "optimization", 28 | "children": [ 29 | {"name": "AspectRatioBanker", "value": 7074} 30 | ] 31 | } 32 | ] 33 | }, 34 | { 35 | "name": "animate", 36 | "children": [ 37 | {"name": "Easing", "value": 17010}, 38 | {"name": "FunctionSequence", "value": 5842}, 39 | { 40 | "name": "interpolate", 41 | "children": [ 42 | {"name": "ArrayInterpolator", "value": 1983}, 43 | {"name": "ColorInterpolator", "value": 2047}, 44 | {"name": "DateInterpolator", "value": 1375}, 45 | {"name": "Interpolator", "value": 8746}, 46 | {"name": "MatrixInterpolator", "value": 2202}, 47 | {"name": "NumberInterpolator", "value": 1382}, 48 | {"name": "ObjectInterpolator", "value": 1629}, 49 | {"name": "PointInterpolator", "value": 1675}, 50 | {"name": "RectangleInterpolator", "value": 2042} 51 | ] 52 | }, 53 | {"name": "ISchedulable", "value": 1041}, 54 | {"name": "Parallel", "value": 5176}, 55 | {"name": "Pause", "value": 449}, 56 | {"name": "Scheduler", "value": 5593}, 57 | {"name": "Sequence", "value": 5534}, 58 | {"name": "Transition", "value": 9201}, 59 | {"name": "Transitioner", "value": 19975}, 60 | {"name": "TransitionEvent", "value": 1116}, 61 | {"name": "Tween", "value": 6006} 62 | ] 63 | }, 64 | { 65 | "name": "data", 66 | "children": [ 67 | { 68 | "name": "converters", 69 | "children": [ 70 | {"name": "Converters", "value": 721}, 71 | {"name": "DelimitedTextConverter", "value": 4294}, 72 | {"name": "GraphMLConverter", "value": 9800}, 73 | {"name": "IDataConverter", "value": 1314}, 74 | {"name": "JSONConverter", "value": 2220} 75 | ] 76 | }, 77 | {"name": "DataField", "value": 1759}, 78 | {"name": "DataSchema", "value": 2165}, 79 | {"name": "DataSet", "value": 586}, 80 | {"name": "DataSource", "value": 3331}, 81 | {"name": "DataTable", "value": 772}, 82 | {"name": "DataUtil", "value": 3322} 83 | ] 84 | }, 85 | { 86 | "name": "display", 87 | "children": [ 88 | {"name": "DirtySprite", "value": 8833}, 89 | {"name": "LineSprite", "value": 1732}, 90 | {"name": "RectSprite", "value": 3623}, 91 | {"name": "TextSprite", "value": 10066} 92 | ] 93 | }, 94 | { 95 | "name": "flex", 96 | "children": [ 97 | {"name": "FlareVis", "value": 4116} 98 | ] 99 | }, 100 | { 101 | "name": "physics", 102 | "children": [ 103 | {"name": "DragForce", "value": 1082}, 104 | {"name": "GravityForce", "value": 1336}, 105 | {"name": "IForce", "value": 319}, 106 | {"name": "NBodyForce", "value": 10498}, 107 | {"name": "Particle", "value": 2822}, 108 | {"name": "Simulation", "value": 9983}, 109 | {"name": "Spring", "value": 2213}, 110 | {"name": "SpringForce", "value": 1681} 111 | ] 112 | }, 113 | { 114 | "name": "query", 115 | "children": [ 116 | {"name": "AggregateExpression", "value": 1616}, 117 | {"name": "And", "value": 1027}, 118 | {"name": "Arithmetic", "value": 3891}, 119 | {"name": "Average", "value": 891}, 120 | {"name": "BinaryExpression", "value": 2893}, 121 | {"name": "Comparison", "value": 5103}, 122 | {"name": "CompositeExpression", "value": 3677}, 123 | {"name": "Count", "value": 781}, 124 | {"name": "DateUtil", "value": 4141}, 125 | {"name": "Distinct", "value": 933}, 126 | {"name": "Expression", "value": 5130}, 127 | {"name": "ExpressionIterator", "value": 3617}, 128 | {"name": "Fn", "value": 3240}, 129 | {"name": "If", "value": 2732}, 130 | {"name": "IsA", "value": 2039}, 131 | {"name": "Literal", "value": 1214}, 132 | {"name": "Match", "value": 3748}, 133 | {"name": "Maximum", "value": 843}, 134 | { 135 | "name": "methods", 136 | "children": [ 137 | {"name": "add", "value": 593}, 138 | {"name": "and", "value": 330}, 139 | {"name": "average", "value": 287}, 140 | {"name": "count", "value": 277}, 141 | {"name": "distinct", "value": 292}, 142 | {"name": "div", "value": 595}, 143 | {"name": "eq", "value": 594}, 144 | {"name": "fn", "value": 460}, 145 | {"name": "gt", "value": 603}, 146 | {"name": "gte", "value": 625}, 147 | {"name": "iff", "value": 748}, 148 | {"name": "isa", "value": 461}, 149 | {"name": "lt", "value": 597}, 150 | {"name": "lte", "value": 619}, 151 | {"name": "max", "value": 283}, 152 | {"name": "min", "value": 283}, 153 | {"name": "mod", "value": 591}, 154 | {"name": "mul", "value": 603}, 155 | {"name": "neq", "value": 599}, 156 | {"name": "not", "value": 386}, 157 | {"name": "or", "value": 323}, 158 | {"name": "orderby", "value": 307}, 159 | {"name": "range", "value": 772}, 160 | {"name": "select", "value": 296}, 161 | {"name": "stddev", "value": 363}, 162 | {"name": "sub", "value": 600}, 163 | {"name": "sum", "value": 280}, 164 | {"name": "update", "value": 307}, 165 | {"name": "variance", "value": 335}, 166 | {"name": "where", "value": 299}, 167 | {"name": "xor", "value": 354}, 168 | {"name": "-", "value": 264} 169 | ] 170 | }, 171 | {"name": "Minimum", "value": 843}, 172 | {"name": "Not", "value": 1554}, 173 | {"name": "Or", "value": 970}, 174 | {"name": "Query", "value": 13896}, 175 | {"name": "Range", "value": 1594}, 176 | {"name": "StringUtil", "value": 4130}, 177 | {"name": "Sum", "value": 791}, 178 | {"name": "Variable", "value": 1124}, 179 | {"name": "Variance", "value": 1876}, 180 | {"name": "Xor", "value": 1101} 181 | ] 182 | }, 183 | { 184 | "name": "scale", 185 | "children": [ 186 | {"name": "IScaleMap", "value": 2105}, 187 | {"name": "LinearScale", "value": 1316}, 188 | {"name": "LogScale", "value": 3151}, 189 | {"name": "OrdinalScale", "value": 3770}, 190 | {"name": "QuantileScale", "value": 2435}, 191 | {"name": "QuantitativeScale", "value": 4839}, 192 | {"name": "RootScale", "value": 1756}, 193 | {"name": "Scale", "value": 4268}, 194 | {"name": "ScaleType", "value": 1821}, 195 | {"name": "TimeScale", "value": 5833} 196 | ] 197 | }, 198 | { 199 | "name": "util", 200 | "children": [ 201 | {"name": "Arrays", "value": 8258}, 202 | {"name": "Colors", "value": 10001}, 203 | {"name": "Dates", "value": 8217}, 204 | {"name": "Displays", "value": 12555}, 205 | {"name": "Filter", "value": 2324}, 206 | {"name": "Geometry", "value": 10993}, 207 | { 208 | "name": "heap", 209 | "children": [ 210 | {"name": "FibonacciHeap", "value": 9354}, 211 | {"name": "HeapNode", "value": 1233} 212 | ] 213 | }, 214 | {"name": "IEvaluable", "value": 335}, 215 | {"name": "IPredicate", "value": 383}, 216 | {"name": "IValueProxy", "value": 874}, 217 | { 218 | "name": "math", 219 | "children": [ 220 | {"name": "DenseMatrix", "value": 3165}, 221 | {"name": "IMatrix", "value": 2815}, 222 | {"name": "SparseMatrix", "value": 3366} 223 | ] 224 | }, 225 | {"name": "Maths", "value": 17705}, 226 | {"name": "Orientation", "value": 1486}, 227 | { 228 | "name": "palette", 229 | "children": [ 230 | {"name": "ColorPalette", "value": 6367}, 231 | {"name": "Palette", "value": 1229}, 232 | {"name": "ShapePalette", "value": 2059}, 233 | {"name": "SizePalette", "value": 2291} 234 | ] 235 | }, 236 | {"name": "Property", "value": 5559}, 237 | {"name": "Shapes", "value": 19118}, 238 | {"name": "Sort", "value": 6887}, 239 | {"name": "Stats", "value": 6557}, 240 | {"name": "Strings", "value": 22026} 241 | ] 242 | }, 243 | { 244 | "name": "vis", 245 | "children": [ 246 | { 247 | "name": "axis", 248 | "children": [ 249 | {"name": "Axes", "value": 1302}, 250 | {"name": "Axis", "value": 24593}, 251 | {"name": "AxisGridLine", "value": 652}, 252 | {"name": "AxisLabel", "value": 636}, 253 | {"name": "CartesianAxes", "value": 6703} 254 | ] 255 | }, 256 | { 257 | "name": "controls", 258 | "children": [ 259 | {"name": "AnchorControl", "value": 2138}, 260 | {"name": "ClickControl", "value": 3824}, 261 | {"name": "Control", "value": 1353}, 262 | {"name": "ControlList", "value": 4665}, 263 | {"name": "DragControl", "value": 2649}, 264 | {"name": "ExpandControl", "value": 2832}, 265 | {"name": "HoverControl", "value": 4896}, 266 | {"name": "IControl", "value": 763}, 267 | {"name": "PanZoomControl", "value": 5222}, 268 | {"name": "SelectionControl", "value": 7862}, 269 | {"name": "TooltipControl", "value": 8435} 270 | ] 271 | }, 272 | { 273 | "name": "data", 274 | "children": [ 275 | {"name": "Data", "value": 20544}, 276 | {"name": "DataList", "value": 19788}, 277 | {"name": "DataSprite", "value": 10349}, 278 | {"name": "EdgeSprite", "value": 3301}, 279 | {"name": "NodeSprite", "value": 19382}, 280 | { 281 | "name": "render", 282 | "children": [ 283 | {"name": "ArrowType", "value": 698}, 284 | {"name": "EdgeRenderer", "value": 5569}, 285 | {"name": "IRenderer", "value": 353}, 286 | {"name": "ShapeRenderer", "value": 2247} 287 | ] 288 | }, 289 | {"name": "ScaleBinding", "value": 11275}, 290 | {"name": "Tree", "value": 7147}, 291 | {"name": "TreeBuilder", "value": 9930} 292 | ] 293 | }, 294 | { 295 | "name": "events", 296 | "children": [ 297 | {"name": "DataEvent", "value": 2313}, 298 | {"name": "SelectionEvent", "value": 1880}, 299 | {"name": "TooltipEvent", "value": 1701}, 300 | {"name": "VisualizationEvent", "value": 1117} 301 | ] 302 | }, 303 | { 304 | "name": "legend", 305 | "children": [ 306 | {"name": "Legend", "value": 20859}, 307 | {"name": "LegendItem", "value": 4614}, 308 | {"name": "LegendRange", "value": 10530} 309 | ] 310 | }, 311 | { 312 | "name": "operator", 313 | "children": [ 314 | { 315 | "name": "distortion", 316 | "children": [ 317 | {"name": "BifocalDistortion", "value": 4461}, 318 | {"name": "Distortion", "value": 6314}, 319 | {"name": "FisheyeDistortion", "value": 3444} 320 | ] 321 | }, 322 | { 323 | "name": "encoder", 324 | "children": [ 325 | {"name": "ColorEncoder", "value": 3179}, 326 | {"name": "Encoder", "value": 4060}, 327 | {"name": "PropertyEncoder", "value": 4138}, 328 | {"name": "ShapeEncoder", "value": 1690}, 329 | {"name": "SizeEncoder", "value": 1830} 330 | ] 331 | }, 332 | { 333 | "name": "filter", 334 | "children": [ 335 | {"name": "FisheyeTreeFilter", "value": 5219}, 336 | {"name": "GraphDistanceFilter", "value": 3165}, 337 | {"name": "VisibilityFilter", "value": 3509} 338 | ] 339 | }, 340 | {"name": "IOperator", "value": 1286}, 341 | { 342 | "name": "label", 343 | "children": [ 344 | {"name": "Labeler", "value": 9956}, 345 | {"name": "RadialLabeler", "value": 3899}, 346 | {"name": "StackedAreaLabeler", "value": 3202} 347 | ] 348 | }, 349 | { 350 | "name": "layout", 351 | "children": [ 352 | {"name": "AxisLayout", "value": 6725}, 353 | {"name": "BundledEdgeRouter", "value": 3727}, 354 | {"name": "CircleLayout", "value": 9317}, 355 | {"name": "CirclePackingLayout", "value": 12003}, 356 | {"name": "DendrogramLayout", "value": 4853}, 357 | {"name": "ForceDirectedLayout", "value": 8411}, 358 | {"name": "IcicleTreeLayout", "value": 4864}, 359 | {"name": "IndentedTreeLayout", "value": 3174}, 360 | {"name": "Layout", "value": 7881}, 361 | {"name": "NodeLinkTreeLayout", "value": 12870}, 362 | {"name": "PieLayout", "value": 2728}, 363 | {"name": "RadialTreeLayout", "value": 12348}, 364 | {"name": "RandomLayout", "value": 870}, 365 | {"name": "StackedAreaLayout", "value": 9121}, 366 | {"name": "TreeMapLayout", "value": 9191} 367 | ] 368 | }, 369 | {"name": "Operator", "value": 2490}, 370 | {"name": "OperatorList", "value": 5248}, 371 | {"name": "OperatorSequence", "value": 4190}, 372 | {"name": "OperatorSwitch", "value": 2581}, 373 | {"name": "SortOperator", "value": 2023} 374 | ] 375 | }, 376 | {"name": "Visualization", "value": 16540} 377 | ] 378 | } 379 | ] 380 | } 381 | -------------------------------------------------------------------------------- /flask-diagrams/.idea/.gitignore: -------------------------------------------------------------------------------- 1 | # Default ignored files 2 | /workspace.xml -------------------------------------------------------------------------------- /flask-diagrams/.idea/flask-diagrams.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 18 | 19 | -------------------------------------------------------------------------------- /flask-diagrams/.idea/inspectionProfiles/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | -------------------------------------------------------------------------------- /flask-diagrams/.idea/misc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | -------------------------------------------------------------------------------- /flask-diagrams/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /flask-diagrams/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /flask-diagrams/__pycache__/app.cpython-37.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peiss/ant-learn-visualization/a7809f8a49bb31054ab59efb0aaf98022b412ab0/flask-diagrams/__pycache__/app.cpython-37.pyc -------------------------------------------------------------------------------- /flask-diagrams/app.py: -------------------------------------------------------------------------------- 1 | from flask import Flask, render_template 2 | import matplotlib.pyplot as plt 3 | import seaborn as sns 4 | import numpy as np 5 | from pyecharts import options as opts 6 | from pyecharts.charts import Pie 7 | 8 | app = Flask(__name__) 9 | 10 | 11 | def generate_matplotlib_png(): 12 | """使用matplotlib绘图,生成图片""" 13 | x = np.linspace(-5, 5, 100) 14 | y = np.sin(x) 15 | plt.plot(x, y) 16 | 17 | png_name = "my_matplotlib.png" 18 | plt.savefig(f"./static/{png_name}") 19 | plt.clf() 20 | return png_name 21 | 22 | 23 | def generate_seaborn_png(): 24 | """使用seaborn绘图,生成图片""" 25 | sns.set(style="whitegrid") 26 | tips = sns.load_dataset("tips") 27 | sns_plot = sns.barplot(x="day", y="total_bill", data=tips) 28 | 29 | png_name = "my_seaborn.png" 30 | fig = sns_plot.get_figure() 31 | fig.savefig(f"./static/{png_name}") 32 | fig.clf() 33 | return png_name 34 | 35 | 36 | def get_pyecharts_pie(): 37 | """生成pyecharts图的对象""" 38 | data = [['小米', 127], 39 | ['三星', 60], 40 | ['华为', 113], 41 | ['苹果', 55], 42 | ['魅族', 57], 43 | ['VIVO', 122], 44 | ['OPPO', 73]] 45 | 46 | pie = ( 47 | Pie() 48 | .add("", data) 49 | .set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: {c}")) 50 | ) 51 | 52 | return pie 53 | 54 | 55 | @app.route('/show_diagrams') 56 | def show_diagrams(): 57 | # 生成matplotlib的图片 58 | matplotlib_png = generate_matplotlib_png() 59 | # 生成seaborn的图片 60 | seaborn_png = generate_seaborn_png() 61 | # 生成pyecharts的对象 62 | pyecharts_pie = get_pyecharts_pie() 63 | 64 | # 渲染模板 65 | return render_template("show_diagrams.html", 66 | matplotlib_png=matplotlib_png, 67 | seaborn_png=seaborn_png, 68 | pie_options=pyecharts_pie.dump_options()) 69 | 70 | 71 | if __name__ == '__main__': 72 | app.run() 73 | -------------------------------------------------------------------------------- /flask-diagrams/static/my_matplotlib.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peiss/ant-learn-visualization/a7809f8a49bb31054ab59efb0aaf98022b412ab0/flask-diagrams/static/my_matplotlib.png -------------------------------------------------------------------------------- /flask-diagrams/static/my_seaborn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peiss/ant-learn-visualization/a7809f8a49bb31054ab59efb0aaf98022b412ab0/flask-diagrams/static/my_seaborn.png -------------------------------------------------------------------------------- /flask-diagrams/templates/show_diagrams.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Flask在网页上展示图片 6 | 7 | 8 | 9 | 10 | 11 |

1、展示Matplotlib图片

12 |
13 | 14 |

2、展示Seaborn图片

15 |
16 | 17 |

3、展示Pyecharts图片

18 |
19 | 27 | 28 |
29 | 30 | -------------------------------------------------------------------------------- /graph_base.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Awesome-pyecharts 6 | 7 | 8 | 9 | 10 |
11 | 414 | 415 | 416 | -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | pyecharts==1.7.1 2 | matplotlib==3.1.3 3 | seaborn==0.10.0 4 | -------------------------------------------------------------------------------- /test.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "code", 5 | "execution_count": 1, 6 | "metadata": {}, 7 | "outputs": [], 8 | "source": [ 9 | "import pyecharts\n", 10 | "import matplotlib\n", 11 | "import seaborn" 12 | ] 13 | }, 14 | { 15 | "cell_type": "code", 16 | "execution_count": 2, 17 | "metadata": {}, 18 | "outputs": [ 19 | { 20 | "data": { 21 | "text/plain": [ 22 | "'1.7.1'" 23 | ] 24 | }, 25 | "execution_count": 2, 26 | "metadata": {}, 27 | "output_type": "execute_result" 28 | } 29 | ], 30 | "source": [ 31 | "pyecharts.__version__" 32 | ] 33 | }, 34 | { 35 | "cell_type": "code", 36 | "execution_count": 3, 37 | "metadata": {}, 38 | "outputs": [ 39 | { 40 | "data": { 41 | "text/plain": [ 42 | "'3.1.3'" 43 | ] 44 | }, 45 | "execution_count": 3, 46 | "metadata": {}, 47 | "output_type": "execute_result" 48 | } 49 | ], 50 | "source": [ 51 | "matplotlib.__version__" 52 | ] 53 | }, 54 | { 55 | "cell_type": "code", 56 | "execution_count": 4, 57 | "metadata": {}, 58 | "outputs": [ 59 | { 60 | "data": { 61 | "text/plain": [ 62 | "'0.10.0'" 63 | ] 64 | }, 65 | "execution_count": 4, 66 | "metadata": {}, 67 | "output_type": "execute_result" 68 | } 69 | ], 70 | "source": [ 71 | "seaborn.__version__" 72 | ] 73 | }, 74 | { 75 | "cell_type": "code", 76 | "execution_count": null, 77 | "metadata": {}, 78 | "outputs": [], 79 | "source": [] 80 | } 81 | ], 82 | "metadata": { 83 | "kernelspec": { 84 | "display_name": "Python 3", 85 | "language": "python", 86 | "name": "python3" 87 | }, 88 | "language_info": { 89 | "codemirror_mode": { 90 | "name": "ipython", 91 | "version": 3 92 | }, 93 | "file_extension": ".py", 94 | "mimetype": "text/x-python", 95 | "name": "python", 96 | "nbconvert_exporter": "python", 97 | "pygments_lexer": "ipython3", 98 | "version": "3.7.6" 99 | } 100 | }, 101 | "nbformat": 4, 102 | "nbformat_minor": 4 103 | } 104 | -------------------------------------------------------------------------------- /timeline_pie.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Awesome-pyecharts 6 | 7 | 8 | 9 | 10 |
11 | 676 | 677 | 678 | --------------------------------------------------------------------------------