亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

深耕商務建站與企業(yè)官網(wǎng)運營的一線實戰(zhàn)洞察。

Python+Django城市PM2.5空氣質量數(shù)據(jù)可視化分析實戰(zhàn)指南

Python+Django城市PM2.5空氣質量數(shù)據(jù)可視化分析實戰(zhàn)指南 簡介一份基于Django框架的城市PM2.5空氣質量數(shù)據(jù)可視化分析源碼面向Python學習者和高校課程設計場景完整涵蓋數(shù)據(jù)采集、存儲、后端處理與前端展示流程。壓縮包共64個文件主要包含17個Python代碼文件、24個CSV數(shù)據(jù)文件、HTML頁面模板及SQL數(shù)據(jù)庫腳本等整體大小12.38MB目錄結構清晰易于直接運行和二次開發(fā)。目前已有328人學習下載。項目以上海、北京、廣州、成都、沈陽五城市六年PM2.5匯總數(shù)據(jù)為基礎實現(xiàn)時間序列逐年趨勢、不同季度/月/時段變化以及與溫度、露點、相對濕度、風向、大氣壓等要素的關系可視化同時附帶Django項目配置、登錄注冊模板和MySQL數(shù)據(jù)庫文件可幫助初學者理解數(shù)據(jù)分析與可視化項目的完整搭建方式。該源碼系個人高分大作業(yè)作品代碼完整可直接部署適合用于期末設計、課程報告或實戰(zhàn)練手。1. 城市PM2.5空氣質量數(shù)據(jù)可視化分析這個課程設計方案為什么值得自己重寫一遍把「Python基于Django城市PM2.5空氣質量數(shù)據(jù)可視化分析」和「95分以上」放在一起基本就是高校課程設計或畢業(yè)設計里最常見的一類選題后端用Django把數(shù)據(jù)管起來前端用圖表把數(shù)據(jù)亮出來再配上一點“分析”的味道。這套系統(tǒng)真正解決的訴求很簡單——讓一份零散的PM2.5數(shù)據(jù)集變成能答辯、能演示、能講清楚技術鏈路的完整項目。它適合正在做Django項目實戰(zhàn)的新手也適合想快速搭一個數(shù)據(jù)可視化Demo、又不想被前端框架拖住的人。我見過不少學生拿到這類源碼包后改不動、答不上來問題往往不在代碼本身而在沒搞懂數(shù)據(jù)是怎么從CSV一路流到圖表的。這篇文章就把這條鏈路完整拆開照著做你也能交出一份能站在講臺上講明白的方案。2. PythonDjango的MVT骨架為什么課程設計首選Django而不是Flask2.1 Django自帶的那套東西恰好覆蓋了課程設計的全部得分點城市PM2.5空氣質量數(shù)據(jù)可視化分析這類項目評審老師真正會看的就三件事數(shù)據(jù)能不能存進去、頁面能不能跑起來、圖表能不能跟著數(shù)據(jù)走。Django的MVT架構Model-View-Template幾乎是沖著這三點設計的Model層用ORM管數(shù)據(jù)庫View層寫業(yè)務邏輯Template層渲染頁面。你不需要像Flask那樣自己拼ORM、自己接模板引擎、自己做后臺管理Django默認全部配好。這里有一個很實際的選型理由Django的Admin后臺是白送的。數(shù)據(jù)導進去之后Admin里能直接看到每一行記錄、能按城市篩、能按日期排序這等于讓你在答辯前多了一個“數(shù)據(jù)管理”的展示頁而且一行代碼不用寫。Flask做不到這一點你要么裝Flask-Admin要么自己寫一個管理頁面工作量直接翻倍。對一門課程設計來說時間成本是很真實的成本。版本選擇上課程設計我一般建議用Django 3.2 LTS而不是最新的4.x或5.x。原因很簡單3.2是長期支持版網(wǎng)上的教程、博客、還有你同學已經(jīng)踩過的坑絕大多數(shù)都集中在這個版本。4.x以后刪掉了一些舊寫法比如url()函數(shù)、django.conf.urls里的include用法新手照著老教程抄很容易當場翻車。如果老師沒硬性要求新版就選3.2穩(wěn)。當然如果你已經(jīng)裝了新版也沒關系第5章會講版本差異導致的典型報錯怎么處理。2.2 圖表選型為什么我不用pyecharts而是直接寫ECharts數(shù)據(jù)可視化是這類項目的門面選錯圖表庫是最致命的。市面上常見的方案有四類我用一個對比表說清楚方案適合場景動態(tài)交互新手友好度答辯風險ECharts原生JavaScriptWeb頁面圖表強setOption增量更新中需要寫一點JS低數(shù)據(jù)傳遞邏輯自己可控pyechartsPython生成圖表頁面弱改配置要重新生成HTML高全程Python中老師追問“數(shù)據(jù)怎么到前端”容易卡殼Matplotlib本地靜態(tài)圖無高高本科階段少見用它做Web項目Highcharts商業(yè)項目強中低但商用有授權問題網(wǎng)上大量教程推薦pyecharts因為它“全程寫Python不用碰前端”。但我自己做這類項目時不會選它——pyecharts本質是把ECharts的配置封裝成Python對象再渲染成一段HTML字符串。問題是一旦答辯現(xiàn)場老師讓你“把折線圖換成柱狀圖”或者“點擊城市后圖表聯(lián)動”pyecharts要走“改Python代碼→重新生成頁面→刷新瀏覽器”這條路調試效率極低而且pyecharts 1.x和2.x的API差異很大很多老代碼在新版本里直接跑不起來。原生ECharts看著要多寫一點JavaScript但恰恰是這一點“多一點”讓你能講清楚整個數(shù)據(jù)鏈路視圖函數(shù)把數(shù)據(jù)轉成JSON→塞進模板→前端拿到JSON→chart.setOption()畫圖。每一步都在你手里答辯時老師問什么你都能接住。城市PM2.5空氣質量數(shù)據(jù)可視化分析的核心是“分析”不是“背一個封裝好的調用”所以我會把寶押在ECharts上。2.3 一個Django可視化項目的最小目錄結構不管外面那層zip殼叫什么名字解壓之后能跑起來的Django項目骨架一定是下面這個樣子。我建議你親手敲一遍而不是直接抄別人的項目結構air_quality/ ├── manage.py ├── config/ │ ├── __init__.py │ ├── settings.py │ ├── urls.py │ └── wsgi.py ├── core/ │ ├── __init__.py │ ├── models.py │ ├── views.py │ ├── urls.py │ ├── admin.py │ └── migrations/ ├── templates/ │ └── dashboard.html └── data/ └── pm25.csvconfig是項目配置目錄core是業(yè)務應用目錄templates放頁面模板data放原始數(shù)據(jù)集。拆分邏輯是配置和業(yè)務分開代碼和數(shù)據(jù)分開。很多新手喜歡把一切塞進core里短期沒問題但數(shù)據(jù)導入腳本、臨時CSV文件、頁面模板混在一起后期改起來很痛苦。這個結構不是我發(fā)明的是Django項目的常規(guī)布局你在任何一本Django實戰(zhàn)入門教程里都能看到類似影子。先把骨架搭對后面每一步都順。3. 把PM2.5數(shù)據(jù)裝進Django數(shù)據(jù)表設計、CSV導入腳本與三條驗證命令3.1 PM2.5數(shù)據(jù)集的常規(guī)字段以及為什么AQI和等級也要入庫要做城市PM2.5空氣質量數(shù)據(jù)可視化分析第一步是搞清楚數(shù)據(jù)長什么樣。一份能支撐可視化頁面的城市空氣質量數(shù)據(jù)集最少要有這幾個字段城市名稱、監(jiān)測日期、PM2.5濃度值、AQI指數(shù)、空氣質量等級。城市和日期是維度PM2.5是核心指標AQI和等級用來做輔助分析比如“近30天優(yōu)的天數(shù)”“污染日集中在哪幾個城市”。我見過有人只存PM2.5數(shù)值其他全丟。短期看頁面也能畫圖但答辯時老師問“AQI怎么算的”“優(yōu)、良、輕度污染怎么劃分”你答不上來因為數(shù)據(jù)里根本沒有這些信息。寧可多存幾個字段也不用后面補數(shù)據(jù)這是做數(shù)據(jù)類項目的一條鐵律。數(shù)據(jù)來源方面常見做法是找公開的城市歷史空氣質量數(shù)據(jù)集CSV格式或者自己寫爬蟲抓公開頁面課程設計階段我建議用公開數(shù)據(jù)集先跑通全鏈路爬蟲有時間再補別一上來就卡在采集上。3.2 建虛擬環(huán)境、裝依賴、創(chuàng)建項目和App動手之前先把環(huán)境隔離好。很多PythonDjango項目跑不起來不是代碼的問題是全局環(huán)境里Django版本和依賴互相打架。以下命令在項目根目錄執(zhí)行python -m venv venv source venv/bin/activate pip install django pandas django-admin startproject config . python manage.py startapp core第一行創(chuàng)建虛擬環(huán)境第二行激活它Windows下是venv\Scripts\activate。pip install django pandas里pandas是為了后面寫CSV導入腳本用的Django本身不需要它。django-admin startproject config .末尾這個點很關鍵表示在當前目錄生成config配置目錄而不是再套一層文件夾這樣manage.py就待在項目根目錄。最后一行startapp core創(chuàng)建業(yè)務應用所有模型、視圖都寫在這個app里。如果這里報django-admin: command not found大概率是虛擬環(huán)境沒激活或者pip安裝路徑不在PATH里。檢查辦法是pip show django看裝沒裝上裝上了就用python -m django代替django-admin效果一樣。跑完這幾條命令你已經(jīng)有一個最小可運行的Django項目了python manage.py runserver啟動后瀏覽器打開127.0.0.1:8000能看到默認火箭頁。3.3 模型字段這樣設計導入和查詢都省心打開core/models.py定義一張城市空氣質量數(shù)據(jù)表。課程設計的數(shù)據(jù)量一般就是幾萬條到幾十萬條SQLite完全扛得住不需要上MySQL。模型我通常寫成這樣from django.db import models class CityAirQuality(models.Model): city models.CharField(max_length64, db_indexTrue, verbose_name城市) monitor_date models.DateField(db_indexTrue, verbose_name監(jiān)測日期) pm25 models.FloatField(verbose_namePM2.5濃度) aqi models.IntegerField(verbose_nameAQI指數(shù)) quality models.CharField(max_length16, blankTrue, default, verbose_name空氣質量等級) class Meta: ordering [monitor_date] unique_together (city, monitor_date) verbose_name 城市空氣質量數(shù)據(jù) def __str__(self): return f{self.city}-{self.monitor_date}這里有幾個參數(shù)值得注意。db_indexTrue給城市和日期加了數(shù)據(jù)庫索引按城市篩選、按時間范圍排序會明顯變快課程設計數(shù)據(jù)量雖然小但養(yǎng)成建索引的習慣沒有壞處。unique_together (city, monitor_date)是去重約束保證同一個城市同一天的記錄只有一條這比在導入腳本里手動if判斷可靠得多。ordering [monitor_date]讓所有查詢默認按日期升序后面寫視圖時不用每次都想起來加order_by。FloatField用來存PM2.5濃度因為監(jiān)測值經(jīng)常出現(xiàn)78.5這樣的帶小數(shù)數(shù)據(jù)AQI是整數(shù)用IntegerField。quality字段設置blankTrue, default是因為有些數(shù)據(jù)源可能沒給等級硬性nullFalse會導致導入失敗。模型定義完執(zhí)行遷移python manage.py makemigrations core python manage.py migratemakemigrations生成遷移文件migrate把表結構真正建到數(shù)據(jù)庫里。執(zhí)行完這兩條命令后Django會自動生成SQLite數(shù)據(jù)庫文件db.sqlite3不需要你手動建庫。3.4 CSV導入腳本用pandas批量寫入而不是逐條insert數(shù)據(jù)文件格式各家不一樣但城市空氣質量CSV通常長這樣第一行是列名后面每行一條記錄列包括城市、日期、PM2.5、AQI、等級。導入腳本我一般放在項目根目錄下import_data.py和Django項目同層腳本內容如下import os import django import pandas as pd os.environ.setdefault(DJANGO_SETTINGS_MODULE, config.settings) django.setup() from core.models import CityAirQuality df pd.read_csv(data/pm25.csv, encodingutf-8-sig) df.columns [c.strip().lower() for c in df.columns] objs [] batch_size 1000 for idx, row in df.iterrows(): objs.append(CityAirQuality( citystr(row[city]).strip(), monitor_datepd.to_datetime(row[date]).date(), pm25float(row[pm25]), aqiint(row[aqi]), qualitystr(row[quality]).strip(), )) if len(objs) batch_size: CityAirQuality.objects.bulk_create(objs, ignore_conflictsTrue) objs.clear() if objs: CityAirQuality.objects.bulk_create(objs, ignore_conflictsTrue) print(f導入完成共 {CityAirQuality.objects.count()} 條記錄)腳本前三行是Django獨立運行腳本的標準寫法設置環(huán)境變量、調用django.setup()否則模型無法訪問數(shù)據(jù)庫。encodingutf-8-sig是專門針對Windows下編輯的CSV文件帶BOM頭用utf-8直接讀會把\ufeff混進第一列列名。pd.to_datetime()統(tǒng)一日期格式float()和int()做類型轉換避免字符串入庫。這段代碼的核心是bulk_create批量寫入一次性提交1000條比在循環(huán)里逐條save()快一個數(shù)量級。ignore_conflictsTrue配合模型里的unique_together約束重復導入時不會報錯重復記錄會被自動跳過。最后一行打印總記錄數(shù)這就是第一條驗證命令——看到它說明數(shù)據(jù)真正落庫了。3.5 三條驗證命令確認數(shù)據(jù)真的導對了數(shù)據(jù)導入完別急著寫頁面先用三條命令確認數(shù)據(jù)質量。打開Django shellpython manage.py shellfrom core.models import CityAirQuality CityAirQuality.objects.count() CityAirQuality.objects.filter(city北京).count() CityAirQuality.objects.values(quality).annotate(cntmodels.Count(id))第一條命令看總記錄數(shù)第二條看指定城市有沒有數(shù)據(jù)第三條按空氣質量等級分組統(tǒng)計數(shù)量。如果第三條跑出來有None空值說明CSV里有些行沒給等級回到導入腳本把空值處理掉。這三條命令能在30秒內告訴你數(shù)據(jù)鏈路通不通比直接寫到頁面里再排錯快得多。我每次做完導入都會跑一遍這三條確認無誤才往下走省下的排錯時間遠多于敲這幾行命令的時間。4. 從QuerySet到ECharts圖表視圖函數(shù)、JSON結構與交互式折線圖的完整鏈路4.1 先定數(shù)據(jù)接口的JSON結構再寫頁面新手寫可視化頁面最容易犯的錯是把數(shù)據(jù)加工邏輯全塞在模板里前端想要什么就臨時湊什么。正確的做法是先定接口后端返回什么結構的JSON前端就按這個結構消費。城市PM2.5空氣質量數(shù)據(jù)可視化分析的主頁面需要兩塊數(shù)據(jù)一是圖表數(shù)據(jù)二是城市下拉列表。我一般把圖表數(shù)據(jù)定義成三個平行數(shù)組日期列表、PM2.5濃度列表、AQI列表。ECharts的折線圖x軸要的就是一個數(shù)組series也對應一個數(shù)組三數(shù)組結構天然契合前端拿到后不需要二次加工。from django.http import JsonResponse from django.shortcuts import render import json from core.models import CityAirQuality def dashboard(request): city request.GET.get(city, 北京) rows CityAirQuality.objects.filter(citycity).order_by(monitor_date)[-30:] data { dates: [r.monitor_date.strftime(%Y-%m-%d) for r in rows], pm25: [r.pm25 for r in rows], aqi: [r.aqi for r in rows], } cities CityAirQuality.objects.values_list(city, flatTrue).distinct() return render(request, dashboard.html, { chart_data: json.dumps(data, ensure_asciiFalse), current_city: city, cities: cities, }) def api_pm25(request): city request.GET.get(city, ) if not city: return JsonResponse({error: 缺少city參數(shù)}, status400) rows CityAirQuality.objects.filter(citycity).order_by(monitor_date)[-30:] data { dates: [r.monitor_date.strftime(%Y-%m-%d) for r in rows], pm25: [r.pm25 for r in rows], aqi: [r.aqi for r in rows], } return JsonResponse(data, json_dumps_params{ensure_ascii: False})這段代碼里values_list(city, flatTrue).distinct()取出去重后的城市列表給下拉框用。[-30:]這種切片寫在order_by()之后取的是按日期排序后的最近30條記錄如果order_by寫反了取的就不是最近30天而是最早30天。strftime(%Y-%m-%d)把日期對象格式化成字符串因為datetime.date類型不能被json.dumps直接序列化。第二段api_pm25是為第6章的局部刷新準備的接口這里提前定義好。注意JsonResponse(data, json_dumps_params{ensure_ascii: False})不加這個參數(shù)中文城市名會變成\u5317\u4eac這種轉義序列前端拿到后顯示成亂碼。4.2 URL路由path()函數(shù)寫法和include的用法視圖函數(shù)寫好后把URL映射配好。項目根URL文件config/urls.py負責掛載app路由app內core/urls.py負責具體路徑# config/urls.py from django.contrib import admin from django.urls import path, include urlpatterns [ path(admin/, admin.site.urls), path(, include(core.urls)), ]# core/urls.py from django.urls import path from core import views urlpatterns [ path(, views.dashboard, namedashboard), path(api/pm25/, views.api_pm25, nameapi_pm25), ]path()函數(shù)里空字符串表示站點根路徑api/pm25/是JSON接口路徑。這里不推薦url()正則寫法這是Django 4.x刪掉的老語法課程設計階段全部用path()就夠了。include(core.urls)把帶core/前綴的請求轉發(fā)給app內路由表這樣即使以后加更多業(yè)務模塊根URL文件也不會膨脹。4.3 模板頁面ECharts折線圖從0到1的完整代碼模板文件templates/dashboard.html是整套系統(tǒng)最終呈現(xiàn)的地方。引入ECharts、定義容器、初始化圖表、塞數(shù)據(jù)四步缺一不可!DOCTYPE html html langzh-CN head meta charsetUTF-8 title{{ current_city }} PM2.5 近30天趨勢/title script srchttps://cdn.jsdelivr.net/npm/echarts5/dist/echarts.min.js/script style #pm25Chart { width: 100%; height: 400px; } /style /head body select idcitySelect {% for city in cities %} option value{{ city }} {% if city current_city %}selected{% endif %}{{ city }}/option {% endfor %} /select div idpm25Chart/div script const chart echarts.init(document.getElementById(pm25Chart)); const raw {{ chart_data|safe }}; chart.setOption({ tooltip: { trigger: axis }, title: { text: {{ current_city }} PM2.5 濃度趨勢 }, xAxis: { type: category, data: raw.dates }, yAxis: { type: value, name: PM2.5 (μg/m3) }, series: [{ name: PM2.5, type: line, data: raw.pm25, smooth: true, areaStyle: { opacity: 0.2 } }] }); /script /body /html這里最容易被忽略的是容器高度。ECharts的容器div如果沒設置高度默認高度為0圖表畫出來就是一片空白。所以模板里#pm25Chart必須顯式寫height: 400px。{{ chart_data|safe }}中的safe過濾器告訴Django這段JSON不要轉義否則引號會被變成quot;JavaScript直接語法報錯。這個用法有個前提chart_data是視圖里自己json.dumps出來的受控數(shù)據(jù)不是用戶輸入所以安全可控。echarts.init(document.getElementById(pm25Chart))一行完成圖表實例化。tooltip配trigger: axis后鼠標懸停能看到每一天的具體數(shù)值這是答辯演示時的核心交互點。smooth: true讓折線更圓滑areaStyle加了一層半透明填充視覺上比裸折線更有“數(shù)據(jù)可視化”的感覺——這兩個參數(shù)是觀感上的加分項成本幾乎為零。4.4 把統(tǒng)計結論寫進頁面數(shù)據(jù)可視化不等于數(shù)據(jù)分析這一章最后做一件很多課程設計都漏掉的事在圖表旁邊加一段統(tǒng)計描述。老師看到折線圖的直觀反應是“好看”但真正讓他點頭的是你能說出來“為什么好看”。# 在dashboard視圖函數(shù)中補充統(tǒng)計邏輯 vals [r.pm25 for r in rows] peak_val max(vals) if vals else 0 peak_date rows[vals.index(peak_val)].monitor_date.strftime(%Y-%m-%d) if vals else 無數(shù)據(jù)把peak_val和peak_date一起傳給模板頁面底部顯示“近30天PM2.5峰值出現(xiàn)在{peak_date}濃度為{peak_val}μg/m3”。這句話就是“分析”的最小單元數(shù)據(jù)可視化是手段結論才是目的。沒有這句你的頁面是“圖表展示”有了這句它才是“可視化分析”。整篇文章的標題里“分析”兩個字靠的就是這一小段代碼坐實。5. Django可視化項目避坑手冊中文亂碼、空白圖、新版Django報錯的排查路徑5.1 ECharts畫出來是空白先查容器高度不要懷疑代碼現(xiàn)象頁面能打開圖表區(qū)域一片空白控制臺沒有報錯chart.setOption也執(zhí)行了。原因ECharts容器div沒有顯式高度或者高度是0。ECharts初始化時讀取容器寬高高度為0時圖表畫不出來但不會拋異常因為初始化本身是成功的。解決給容器加CSS高度如#pm25Chart { height: 400px; }。如果容器是響應式布局用height: 60vh也可以。這是一個非常像“玄學”的問題因為頁面看起來一切正常實際上卡在最基礎的地方。我做過一個項目三個頁面用了同一個模板只有第三個頁面白屏排查了半天發(fā)現(xiàn)是那個頁面的CSS里把容器寫成了height: auto。5.2 CSV中文城市名變成亂碼encoding參數(shù)要選對現(xiàn)象導入完成后頁面上城市名顯示為“鍖椾含”或者導入時直接報UnicodeDecodeError。原因Windows下用Excel編輯的CSV默認是GBK編碼而Windows下Excel保存CSV時會帶上BOM頭utf-8編碼讀取GBK字節(jié)流必然解碼失敗即使讀進來了字節(jié)流被錯誤解碼后就是亂碼。解決讀取CSV時用encodingutf-8-sig這個編碼會自動吃掉BOM頭同時正常解析UTF-8內容。如果數(shù)據(jù)源確實是GBK就改用encodinggbk。更穩(wěn)妥的做法是一開始就把CSV統(tǒng)一轉成UTF-8用VS Code打開后右下角編碼選擇“通過編碼保存”選UTF-8保存一次之后所有腳本都用utf-8-sig讀。數(shù)據(jù)文件編碼問題在數(shù)據(jù)可視化項目里排在前三名處理不好會直接污染數(shù)據(jù)庫。5.3 Django新版刪了url()函數(shù)老教程一抄就報錯現(xiàn)象按網(wǎng)上老教程寫url(r^index/$, views.index)啟動服務或訪問頁面時拋TypeError: url() got an unexpected keyword argument regex或者直接提示模塊沒有url屬性。原因Django 2.0起推薦path()4.0以后徹底移除了url()函數(shù)。網(wǎng)上大量教程和博客還是多年前的寫法抄下來必然報錯。解決全部改用path()路由。path(index/, views.index)就能實現(xiàn)同樣的效果。如果你確實需要正則匹配用re_path()代替它是url()的正則版后繼者。另外要留意版本相關的settings.py配置Django 3.2的DEFAULT_AUTO_FIELD需要設置很多老教程沒寫這個遷移時會收到一條警告不影響運行但有提示。這類問題不是你的代碼錯了是教程版本和運行環(huán)境不匹配裝上Django 3.2 LTS后大部分老教程都能直接用。5.4 json.dumps中文變成\uXXXX頁面顯示一串反斜杠現(xiàn)象頁面上折線圖的橫軸日期顯示正常但下拉框里或者圖例中的城市名顯示成\u5317\u4eac甚至直接把整個setOption參數(shù)變成了無效的JavaScript。原因json.dumps默認把非ASCII字符轉成\uXXXX轉義序列模板變量通過safe輸出后JavaScript拿到的是字面量反斜杠而不是漢字。如果轉義序列被插進帶引號的字符串里就會破壞JS語法。解決json.dumps(data, ensure_asciiFalse)。在API接口里如果用JsonResponse則傳參json_dumps_params{ensure_ascii: False}。兩個地方一個都不能漏模板渲染用的chart_data走的是json.dumpsAJAX接口走的是JsonResponse。這條排查路線的現(xiàn)象特別容易和編碼問題混淆實際是序列化參數(shù)的問題。5.5 導入數(shù)據(jù)重復翻倍unique_together是后悔藥現(xiàn)象導入腳本跑了兩遍數(shù)據(jù)庫里城市和日期的組合出現(xiàn)了兩行相同記錄圖表里某一天有兩個數(shù)值點折線圖看上去像“重影”。這會讓平均值計算和峰值統(tǒng)計全部失真。原因導入腳本沒有去重邏輯第二次執(zhí)行時又批量插入了全部數(shù)據(jù)。課程設計階段重復導入很常見尤其是調試導入腳本時反復執(zhí)行。解決模型上建unique_together (city, monitor_date)導入時用bulk_create(objs, ignore_conflictsTrue)。unique_together在數(shù)據(jù)庫層面建了聯(lián)合唯一索引重復數(shù)據(jù)插入時數(shù)據(jù)庫會拒絕ignore_conflictsTrue告訴Django“沖突就跳過不報錯”。這樣導入腳本跑一百遍都不會污染數(shù)據(jù)。如果已經(jīng)翻倍了先清空表再重新導入Django shell里執(zhí)行CityAirQuality.objects.all().delete()即可。6. 進階技巧用AJAX把城市切換做成局部刷新答辯時多一個亮點基礎版本里切換城市要刷新整個頁面用戶體驗一般答辯演示時還會讓老師覺得“這跟Excel畫圖區(qū)別不大”。進階做法是通過fetch()請求JSON接口拿回數(shù)據(jù)后調用ECharts的setOption()更新圖表這就是局部刷新。核心代碼在4.1的api_pm25接口基礎上往模板里加一段監(jiān)聽const citySelect document.getElementById(citySelect); citySelect.addEventListener(change, function () { const city this.value; fetch(/api/pm25/?city encodeURIComponent(city)) .then(res res.json()) .then(data { chart.setOption({ title: { text: city PM2.5 濃度趨勢 }, xAxis: { data: data.dates }, series: [{ data: data.pm25 }] }); }); });這里兩個關鍵設計encodeURIComponent(city)把中文城市名轉成URL安全編碼否則fetch請求里的中文可能變成非法字符chart.setOption是增量更新只需要傳入要變的部分ECharts會自動合并新舊配置不需要重新init創(chuàng)建新圖表。如果調用chart.clear()再重新setOption頁面會閃一下答辯時觀感不好——增量更新是官方推薦做法也是和“刷頁面”思路最不一樣的地方。最后補一個小技巧在setOption之后加一行chart.resize()解決容器尺寸變化時圖表不跟隨的問題。有些答辯現(xiàn)場把瀏覽器窗口從筆記本投到投影儀分辨率一變圖表要么溢出要么縮成一團resize()就是為這個場景準備的“后悔藥”。做這類課程設計項目我最后悔的永遠是貪多嚼不爛又是地圖又是瀑布圖最后哪個都沒講清楚。這次這個方案只用了折線圖加局部刷新數(shù)據(jù)鏈路短、邏輯能自洽、答辯時每一行代碼都講得出來龍去脈反而拿到了不錯的評價。城市PM2.5空氣質量數(shù)據(jù)可視化分析做到這個程度已經(jīng)遠超“交作業(yè)”的下限。如果你時間更充??梢栽傺a一個按周聚合的柱狀圖或者用Django的annotate()算一個城市年均值對比表——方向對了加功能只是時間問題。希望這些排過坑的思路能幫你少走幾段彎路祝答辯順利。本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
二三四区精品| 国产福利合集| 色诱中文字幕| 91五月天| 亚洲av在线免费观看| 久操视频资源站公开| 麻豆成人影音在线| 国产吹潮女在线观看| 91网18| 国产成人网| 国产精品ⅴ无码大片在线看.| 国产精品高朝久久久久久久| 人妻在线中出视频| 99综合网| 麻豆人妻精品一区二区| 激情五月天丁香社区| 大黄片做爱的大的| 最新三级网址| 九九色影院| 亚洲精品无码成人久久久99| 久久黄片国产一区二区| 91丝袜| 欧美在线干| 97超碰亚洲| 人妻插插人妻人| 性色高清在线| 亚洲精品一区二区精品| 蜜臀一区二区三区亚洲最新章节在线观看 - 高清蜜臀一区二区三区亚洲全集播放 | 春色91| 综合大香蕉美。| 东京热av男人的天堂| 欧美日韩夜夜| 亚洲男人的天堂一区二区| 天美麻花大全视频| 成人五月香网在线| 久久婷婷一区二| 99热只有| 操死我了嗯嗯嗯| 日韩中文字幕2020| 色噜噜日韩精品| 夜夜无码| 欧美日韩亚洲天堂| 人人看黄色视频| 欧美极品美女aaaaaa级黄片| 操逼逼一区视频| 日韩激情无码影院| 日本一区二区三区四区免费观看| 免费强奸av| 中文字幕精品区先锋资源| 久久欧洲| 超碰在线1234区| 5252色欧美在线男人的天堂| 国产成人99久久亚洲综合| 人妻 丝袜美腿 中文字幕| 久久国产乱子伦精品免费女人| 天天弄天天操| 熟女久久久| 精品久操| 浓厚中出中文字幕在线| 日韩不卡a级视频专区| 久热91| 嗯嗯嗯好爽| 亚洲吊色| 精品亚洲天堂| 欧美日本国产日韩激情视频| 五月综合视频| 久草线上视频免费看| 国产suv一区二区三区6| 久久69| 在线日韩精品一区二区三区| yellow网站免费观看日韩高清无码| 人人潮人人摸| 丰满人妻一区二区三区| 99综合自拍| 欧美小说区视频区| 激情五月综合开心五月| 亚洲成人免费在线| 欧美色日本| 久热无码| 久久久一区二区| 久久香蕉国产线看观看亚洲女人 | 岛国艾薇凹凸视频天堂| 亚洲av乱伦色图网站| 五月激情综合网| 伊人玖玖网| 97色色色| 五月综合久久| 熟妇一区,二区,三区。| 欧美日韩性爱无码| 桃色六月天| 国产一| 26uuu久久| 97操碰| 一区,二区,三区视频| 天啪| 偷拍 精品 另类 四区| 四虎在线免费视频| 日韩福利综合一区| 1024亚洲中文字幕久在线看片你懂的| 加勒比综合在线| 国产99精品一区二区三区免费| 亚洲综合五月天| 欧美少妇色综合| 欧美一区91大爱| 9久精品视频在线观看| 亚洲激情视频| 婷婷五月天综合网| 极品出轨视频网站| 最近的最新的中文字幕视频| 国产一区二区三区,在线观看观看| 操逼网站网站| 亚洲综合码| 亚洲欧美首页| 91人人看| 日韩极品无码B| 伊人影院中文字幕| 久久久四区| 97色色网| 91美女视频| 亚洲欧美九九| 亚洲性爱电影| 中文字幕、久久精品国产2020、久久综合久久自在自线精品自、亚洲 | 丁香九月 婷婷| 欧美综合97www| 玖草在线视频| 麻豆AV一区二区| 亚洲精品久久久久毛片A片拉屎 | 国产无马在线| 超碰夫妻97| 亚洲精品xxx| 日韩资源网| 亚洲天堂中文字| 久久久久久波多野吉衣高潮| 日本五十路熟女一区二区| 国产一区二区在线播放,久久亚洲精品中文字幕第一区,亚洲精品在线中文字幕视频 | 欧美亚洲清纯| 蜜臀久久99精品久久综合| 亚州黄站| 大香蕉97久久| 色波多| 精品久久久久9999| 亚洲色色探花| 精品欧美乱码久| 欧美视频中文字幕区| 玖玖资源综合在线视频| 啪啪资源网| 青草视频人妻在线观看| 午夜男人一级A片7777| 99re98| 日韩超碰精品综合| 欧美一级A片在线看视频性色| 丰满欧美放荡少妇在线| 亚洲 欧美 小说| AV网站高清无码在线观看| 干干干天天| 中文字幕av片| 亚洲欧美综合色| 天天干夜夜一操| 偷拍盗拍亚洲色图图片| 亚洲永久AV无码精品秋霞| 国产精品视频白浆免费| 91熟女视频| 91色色综合| 久久精品欧美一区蜜桃| 国产超碰| 热久久国产| 国产精品爱欲| 亚洲欧洲日产国产综合网| 国产91久久九九免费精品无码| 91精品国产长腿丝袜美女| 91亚洲人电影| 丰满的三级少妇欧美久久久| 69一区二区三区 | 国产精品久久久久久片| 国产对白刺激视频| 操逼操逼操| 97av,com| 亚洲欧美激情小说| 国产精品熟妇一区二区三| 日韩欧美麻豆大片| 婷婷亚洲色| 国产亚洲女v在线观看| 男人的天堂va在线| 欧美激情区| 蜜桃臀久久| 麻豆精品一区二区三区四区免费观看| 夜夜骑操视频| 性生活无遮挡纯毛片在线看| 精品一区二区麻豆| 超碰99热中文字幕| 高跟伊人julia ann| 久久国产精品一级二级三级| 超碰av人人人| 97超久碰| 久久女同性恋一二区| 青青草在线成人视频| 激情综合婷婷| 欧美亚性天堂| 老女人爆菊| 蜜桃久久综合视频| 亚洲成人av色网| 亚欧国产无码精品在线| 亚洲午夜福利视频| 人妻少妇av在线观看| 一级黄色视频网| 欧差乱伦二三| 一个色导综合| 思思热久久成人| 国产女人与拘做受视频免费| 一起草日韩| 欧美一级久久久久久久大片动画| 日日噜噜夜夜狠狠视频无| 一中国女人毛片水真多| 性暴力欧美猛交在线直播| 伊人网免费视频| 日韩无码a片| 操高情无码| 午夜福利视频在线一区| 日本色色色| 超碰人人妻| 神马久久久久眼| 中文字幕-区二区三区四区视频中国| 96久久久| 国产成人自拍视频视频| 婬女免费一二三区A片| 日韩在线观看中文字幕视频| 91亚·色| 亚洲激情色片| 欧美97se| 国产在线视频午夜精华在| 亚洲国产精品成人综合| 在线观看av区| 色999偷自拍拍| 99久在线精品99re8a| 日韩/97| 亚洲日韩久久精品一区| 久久精品国产亚洲粉嫩| 一本色道无码DVD中文字幕| 日韩美女啪啪一区| 337p大胆噜噜噜噜噜91Av| 爱爱动态120秒| 日日橹狠狠爱欧美超碰| 97伊人超碰| 日韩特级毛片免费观看全集| 久久一区二区三区入口| 天天看少妇| 午夜后入| 国产亚洲色婷婷久久99精品91 - 百度| 日本1区2区不卡视频| 黄片在线免费在线观看| 97看操| 白嫩91在线亚洲| 一级片视频啪啪| 高清无码国产亚洲| 国产第11页| 亚洲日本韩国极品一区二区| 欧美激色| 成人精品久久久午夜福利| 嫖老熟女A片一二三区| 九九热免费国产视频婷婷伊人五月 | 亚洲激情久久| 亚洲久草AV色图| 日韩 国产 欧美自拍| 丁香婷婷九月| 亚洲熟女一区| 日韩中文字幕视频| 日韩女优中文字幕| 欧美高清第一页| 操逼无码一区| 九九九精品一区二区无码| 天天综合官网| 日夜啪电影| 熟妇高潮二区三区| 久久精品中文字幕观看| 中文字幕精品人妻丝袜| 久久精品一区二区三区四区五区| 狠狠干,狠狠操| 91在线国产后入风骚翘臀美女素人| 秋霞网无码| 日本曲间由美性生活片| 成人无码欧美一级A片狼牙直播| 国模不卡| 夜夜国产一区| 亚欧精品久久久久久久久久久| 白丝jkav| 99视频这有这里有精品| 精品国产污一区二区三区| 久草视频分类在线| AV天堂因数| 亚洲第一在线视频| 久久噜噜噜精品国产亚洲综合| 无码精品人妻一区二区三区妖精| 男人天堂综合| 久久久久久日韩| 99www.bibizy香蕉资源国产一区二区三区高清| 3PAV乱伦视频| 久久亚州高清| 最新日产中文在线麻豆| 欧美天天在线| 色婷婷丁香| 在线二区不卡| 超碰97资源中文字幕| 国产一级舔足在线观看| 伊蕉97蜜桃97狠狠综合干| 国产精品第一区第一页| 超碰98综合网| 极品极品色影院| 国产三级中文字幕粉嫩| 婷婷深爱五月| 精品日韩产品在线,日韩在线不卡视频,欧美日韩免费专区/久, | 两女互慰AV高潮喷水在线观看| 亚州成人a∨| 永久电影三级在线观看| 欧美日韩国产人人| 婷婷亚洲综合| 国产91 丝袜在线播放00-百度| 色999人与兽| 久久性爱视频99| 中文字幕精品久久久久人妻红杏ⅰ| 不卡av在线中文字幕| 黑人干亚洲| 99久久综合| 69av一区二区三区| 99热国产精品| 熟女人妻一区二区三区| 91嫩草欧美| 国产精品久久久久久片| 人妻色偷色噜| 日本免费二区三区| 亚洲综合在线高清| 日本 欧美 国产一区| 色妇综合网| 日日A∨| 日本福利二区视频| 国产午夜福利专区综合| 97色操| 欧美se亚洲| 黄色AAAAA欧美| 中文有码9| 99只有精品| 人妻丝袜无 码视频专区| 精品亚洲成人免费在线| 亚洲在线a| 九九av| 日韩熟女精品无码专区一区二区 | 97精品一二区| 伊人久久大香大香线蕉中文| 极品综合| 亚洲成aⅴ人片不卡无码| 骚妻少妇精品性色无码四色A V| 欧美综合97www| 欧美一级黄片免费播放| 自拍偷拍 高清无码| 青娱乐淫乱1314| 久久大香蕉97| 亚洲 日本 不卡| 我爱搞逼综合网| 亚洲精品97在线| 欧美激情 亚洲色图| 欧美熟妇乱码在线一区| 亚洲天堂,男人| 亚洲AV无码国产成人| 国产精品高潮呻吟av久久4虎| 正宗无毛一线天嫩逼| 大香蕉综合在线| 亚洲男人天堂网久久| 婷婷大香蕉| 在线看免费无码AV天堂的| 美女午夜福利免费视频| 91人妻最真实刺激绿帽| 午夜人人操| 蜜桃久久一区二区三区| 97操| 精品无码欧美三级| 大香蕉欧美| 欧美综合综合| 久热精品在线| 欧美一级国产一级| av网站在线看| 国产呦精品系列在线观看| 婷婷精品久久av影视| 蜜桃狠狠色伊人亚洲综合 | 国产日韩欧美亚洲精品95 | 无码一区二区三区四区五区六区七区八区九区十区视频 | 亚洲AV无码国产成人| 亚洲va有码在线天堂| 91九久| 久久97| 丁香五月婷婷啪啪| 婷婷导航| 欧美色图片91| 色阁阁AV综合网| 欧美亚洲高清晰| 伊人性在线视频| 精品无码少妇| 最新国产精品| 免费福利视频中文字幕| 蜜桃视频成a人v在线| 国产亲戚伦亲在线| 久久久人体| 日本熟人妻中文字幕在线|...久久国产精品-国产精品_日本一区二区三区中文字幕 | 免费1级a做爰片观看| ,成人免费啪啪视频| 熟妇xxxxx性春色| 人人潮人人摸| 日韩中文欧美| 你草精品在线视频| 插插综合网天天影视网| 天天综合网网欲色| 天天综合网日韩7799| 日韩精品永久在线观看| 久久久久成人蜜桃精品| 色盈盈影院| 99999这里都精品| 日本欧美不卡| 午夜啪啪片| 婷婷久草| 职场同事知名国产国产精品久久欧美日韩| 超碰超碰超碰超碰的大鸡吧操黑丝袜 | 飘花国产午夜精品不卡| 伊人久久大香大香线蕉中文| 久久久9品一区二区三区| 国产精品人人爽人人做可爱福利| 日本精品无码三级网站| 操操啪| 嗯嗯啊好大| 97欧美综合网| 日韩精品一区二区日韩| 亚洲色图在线视频| 亚洲少妇自拍中文字幕懂色| a片久久久久久久久久久久| 黑人嘿嘿嘿超爽免费视频| 99∨VTV| 性爱AV天堂| 91亚洲人| 久操大香蕉| 99re95| 96精品久久| 加勒比久久综合网高清| 久久的网站啊啊啊啊啊| 久9精品| 国产日韩欧美三级片| 狠狠做深爱婷婷久久二区| 亚洲自拍小说| 狠狠操夜夜| 亚洲情色1区| 日本媚薬中文字幕在线| 日本Xx性爱| 精品视频97| 老司机福利青青草| 国产高清1234区| 怡红院久久老司机| 在线强奷到舒服的无码视频| 精人妻无码一区二区三区伊人直播| 夜草网站| 久妇网| 天久久久噜噜噜久久国产精品爽爽 | 日本特黄f c2| 农村妇女精品一二区| 日韩亚洲Av人人夜夜澡人人爽| 久久仑合| 久久精品国产亚洲AV高清演员表| 欧美性后入| 色网站导航大全| 久久久草成人网站久久久草成人久久久草久久久 | 伊人96在线| 另类小说综合网| 麻豆精品A片免费观看| 日本阿v天堂在线观看| 久久怡红院| 亚洲欧美97| 久久精彩视频| 国产精品久久久| 天天透伊人| 麻豆久久一区二区三区| 欧美熟爽综合| 国产91av在线播放| 老女人91| 婷婷五月天色色| 91中出视频| 熟女性视频| 沈阳熟女高潮对白视频| 性性久久| 91free福利| 亚洲人妻五月丁香婷婷| 国产精品久久久视频| 熟妇乱伦一区二区| 日韩不卡网操逼中文字幕日韩| 亚洲人妻中文高清| 可乐操亚洲蜜911| 嗯啊不要啊在线| 日产操逼| 加勒比av网| 伊人久久艹| 91色色网站| 天天综合网入口~91| 国语精品内射在线观看| 久久97视频| 亚州操操穴网| 国产亚州高清国产拍精| av 模特一区了| 亚洲砖码砖专无区2023| 国产97亚洲| 91爱做| 国产Aα| 淫淫综合网| 97色97好| 天天日夜夜爽| 手机在线视频国内精品| 91美女小视频| 久男人久久| 91人人爽人人爽人人人,gav福利视频导航,日韩欧美亚洲国产字幕四区 | 国产无码精品成人| 好一吊区二区| 激情综合av| 日日夜夜天天| ..日韩av毛片精品久久久| 美女高潮国产高清| www被窝色com| 日本不卡码黄色| 精品国产肉丝袜在线拍国语| 在线观看不卡一区二区三区| 97国产天堂岛| 精品久久久亚洲AV成人网站| 婷婷av在线中文字幕| 国产乱不卡| 一区二区首页| 久久久精品国产亚洲伊人| 欧美亚洲| 国产免a费看黄片在线| 91老熟女| 青青青在线高清视频在线一二三四区| 伊人操操| 青青草五月天| 第二页中文字幕| 99操| 99热自拍| av婷婷色婷婷色六月| 看免费的黄片| 秋霞Av理论一级在线| 中文字幕av一区二区三区人妻少妇| 在线人人人人人人精品超| 78久久| 精品十八在线观看| 超碰无码五月97| 欧美色天堂网在线视频| 欧美午夜色妇色鬼| 亚洲有码 视频一区| 激情看片网站| 色小视频蜜乳| 亚洲精品成人| 五月天综合| 综合五月婷婷| 免费黄色视频网址| 色婷婷丁香五月| 人人色人人操在线| 九九热九九| 色欲久久综合| 久操大香蕉手机视频在线看| 日本曲间由美性生活片| 怡红院视频在线| 国产精品另类| aaa一级黄片| 日韩无码操逼片| 韩国手机不卡无码三级视频| 天天干天天燥| 久热香蕉精品在线视频| 全球成人中文在线| AV大香蕉| 久久综合日韩亚洲欧美| 欧美色66| 亚洲爱爱视频一区二区| 亚洲人精品午夜不卡| 208天天久久九九九| 97超碰精品图片| 91色花堂| 三级AV入口| 国产精品一区二区三区,亚洲综合| 日韩Va亚洲va欧美Ⅴa久久| 色噜噜精品一区二区三| 日本操BAV| 女优视频第10页| 国内黄色精品| 中字一区| 屁股久久久久久久| 370p日韩欧美亚洲精品| 深田咏美亚洲精品福利社| 九九热在线视频| 天天综合网91入口| 人妻无码一区二区三区久久99| 加勒比色99999| 91香蕉国产尤物视频| 国产高清精品一区二区三区毛片| 亚洲四虎熟女精品| 亚洲免费精品一区| 亚洲91大片| 东京热毛片177b2viP| 91伊人久| 天堂岛av| 精品一区二区三区蜜桃臀www| 亚洲综合一| 91精品操美女| 久久尹人大香焦视| 秋霞无码av鲁丝片一区| 男人的天堂,欧美亚洲另类国产日韩,日本高清一区二区 | 性色aV一区二区三区噜噜| 两女互慰AV高潮喷水在线观看| 黄片www.| 天天α片| 热99这里有精品综合久久| 99久久精品无码一区二区| 久悠悠av| 99999久久精| 国产亚洲精品美女久久久久久2021| 色五月婷婷五月天| 九一国产精品| 免费日韩黄片| 小草精彩毛片| 啊啊啊啊啊啊在线| 熟女久久| 免费精品人妻一区二区三| 九九热九九热| 操熟女91| 日韩免费性爱视频在线观看| 久久精品中文| 国产成人99久久亚洲综合| 亚洲精品丝袜-不卡成人免费……| 插入粉嫩少妇视频| 成人无码电影在线观看网| 又黑又大又粗| 伊人超碰97| 久久久com| 超碰97在线色男人??| 欧美性夜| 国产美女高潮叫床视频| 中文字幕人乱码中文字的预防方法 | 亚洲AV成人精品网站在AV| 五月天激情国产综合婷婷婷| 亚洲极品| 天美麻花大全视频| 另类老少妇| 看日韩操逼| 九一国产精品| 久久精品色欧美aⅴ一区二区| 欧美日韩亚洲五月天婷婷| 1769国内精品视频| 青青草五月天| 白天啪啪晚上啪啪视频| 亚洲天堂美臀在线| 最新日产中文在线麻豆| 精品综合久久久久久97| 亚洲美女自拍偷拍视频| 精彩久久中文| 99久在线精品99re8| 97超碰影音| 激情五月丁香五月| 亚洲日韩精品一区二区| 97香焦色区| 在线免费观看高清无码视频| 免费看污网站| 草草影院日本第一页| 久久亚洲色图中文字幕| 国产粉嫩出水在线播放| 九九九成人| 日韩国语字幕| 老司机天天操| 欧美久久人体| 91麻豆天美国产欧美日| 女欧美一区二三区| 亚洲色悠悠久久88| 久久亚洲婷婷| 另类亚洲一区二区三区| 午夜激情成人在线观看| 狠狠干妹子| 女优视频第10页| 欧美日韩国产成人高清| 欧美天堂亚洲电影院一区在线播放 | 男人午夜天堂| 无码国产精品午夜不卡(| 久久99九九九九6666免费观看软件| 国产乱码久久| 国产一级特黄大片处女| 欧美97av| 第45页一区二区| 黄色性爱网网| 美日韩男女操屄视频| 久久骚| 麻豆蜜桃视频在线观看 | 亚洲自拍欧美国产首页网曝| 国产欧美亚洲精品a第2页| 国产精品操| 欧美在线 亚洲| 亚洲情色电影网| 久久av成人无码免费| 青草精品视频日本久久久久网站在线| 欧美97在线观看| 97操操| 亚洲第一精品在线视频 | 欧美少妇熟女| 久久鲁干| 国产亚洲性生活视频播放| 97在线/亚洲| 四虎在线播放| 欧美精品丝袜久久久中文字幕| 天天精品| 欧美经典一区二区三区| 国产强奸乱伦第1页| 999久久芭蕾| 日韩人妻精品中文字幕| 欧美黑人猛交春色影视大全| 1769精品一区二区三区| 亚洲欧洲中文日韩女优乱码| 91亚洲欧美激情| 91熟女.com| 97色妞| 91精品人妻一区二区三区蜜桃臀 | 亚州,欧美在线| 日韩视频小说在线观看 | 乱伦熟女专区| 日韩少妇无码| 亚洲无码一区成人免费午夜| 大香蕉伊然在亚洲91| 日韩av色图综合| 欧美精品在线观看| 密桃99999| 日本99久久| 亚洲综合精品国产一区| 欧美日日操| 国产久久免费精品视频| 测评在线观看AV| 精品久| 人妻一区二区三区熟女| 国产suv一区二区三区6| 久久久成人免费av电影| wuyechaopeng| 亚洲大色鬼| 一区二三区四区视频大全套| 欧洲亚洲天堂精品| 久久久久9| 欧美传媒一区| 超碰是碰在线观看| 超碰久草| 久久久精品,3| 色97干| 亚洲情欲| 亚洲 欧美 精品专区 极品| 97香蕉网| 人人做,人人操,人人摸| 国内精品a| 中文字幕亚洲永久精品| 亚洲1区2区三区高清中文字幕| 欧美黑人精品在线播放| 黄色网址在线免费观看| 蜜臀操逼黄色视频操的好爽| 婷婷91| 伊人亚洲国产一成人久久精品,久久| 丁香五月激情五月| 日本一二区免费| 日韩国产十八禁| 国产女人9999| 久久久一区二区三区麻豆| 91制服丝袜| 青娱乐休闲视频在线观看| 国产毛片片精品天天看视频| 亚洲精品一区二区精品| 美女操逼福利视频| 五月天婷婷基地| 精品人妻一区二区三区-国产| 亚洲精品天天影视综合网| 最新精品久久蜜桃 | 中文字幕视频二区| 国产精品美女久久久久久网站| 国产一区二区三区白丝| 国产福利av精彩对白| 91大学精品激情戏| 免费网色网站| 中韩中文字幕在线观看| 9国产超碰| 2020国产精品| 99国产精品免费| 久久国产精品视频| 日本人妻伦在线中文字幕| 亚洲欧美日韩精品久久久一区二区 | 午夜呻吟欧美| 在线 欧美 亚洲| 国产精品不卡av免费在线观看| 国产大学生口爆吞精合集| 久久午夜伦| 亚洲性综合| 亚洲精品久久久久毛片A片拉屎 | 日韩操啪| 久9热| 青青草成人视频在线观看二区| 欧美性高潮| 性爱免费视频成人| 欧美黑人猛交春色影视大全| 亚洲色图第四色| 欧美性生活男人的天堂| 91丨九色丨东北熟女| 亚洲精品蜜桃久久久久久久| 亚洲天堂2020| 久久人人爽人人爽人人片Ⅴ| 日本大香蕉| yiqicaoav| 婷婷五月成人| 啊啊啊啊好大好硬啊啊啊啊啊| 亚洲一区二区在线观看91| 色爱三区| 欧美在线中M| 素人一区二区三区日韩| 日本免费不卡二区| 3P丝袜熟女 色综合| 91成人久久| 美女AV一区二区| 色99999| 欧美天天插| 日本不卡一二区| 欧美综合区| 久久久久久久久久久久欧美日| 久草尤物| 欧美无圣光在线| 欧美狠狠干| 亚洲天堂人妻一区二区| 亚洲av资源| 日韩啪啪视频| 91高清欧美| 亚洲午夜AV| 九九热re99re6在线精品| 粉嫩不卡一区二区性爱 | 333kkkk·亚洲com久久| 大香蕉一人在线| 人妻献身系列第54部| 色狠人在线99| 久久久精品91八戒| 麻豆性爱视频在线播放| 人妻偷拍一区二区三区| 欧美日韩少妇色情| 男女激烈网站最新| 久啪| hd成人一区二区在线| 91精品少妇搡搡搡| 免费综合亚洲中文| 东京热,男人的天堂| 成人电影一区| 欧美综合另类| 欧美在线伊人色| 蜜乳AV.COM| 久久久禁| 青青草丝袜在线视频| 色狠狠一区二区三区香蕉| 婷婷九月色| 国语少妇精| 欧美最婬乱婬爆婬性视频 | 亚洲精品自拍| 精品人妻一区二区乱码一区二区| 亚洲综合另类小说色区亚洲成av人片在www| 97免费视频网| 成人网站 免费观看| 人妻色情天天操| 欧美另类色图片| 精品久久久久久AV无码| 欧美亚洲成人在线一区二区三区| 性爱乱伦网址| 国产精品香蕉| 操死我了嗯嗯嗯| 免费在线观看AV无码网站| 天天影视亚洲| 国产精品在线网站| 色色婷婷五月| 乱伦一二三区| 无码人妻丰满熟妇区毛片| 久久综合五月天| 日日操免费视频| 亚洲精品久久久久久| 蜜臀久久99精品久久久久久久久| se吧提供国产乱老熟视频胖女人| 天天日骚逼熟女| 91色碰| 国产99久久99热这里只有精品15| juliaann欧美丝袜办公室| 91亚州欧美| 伊人五月天| 家庭乱伦国产精品| 欧美后入式| 99精品在线| 国产精品香蕉热久久新品| 啊啊啊操死我了| 久久久一热在线播放| 看大黄色大片原件| 又黄又硬又粗又长国产视频| 香一区二区三区| 黄色欧美性爱视频| 国产精品成人AV片免费看网站| 97免费视频在线观看视频| 日韩啪啪啪啪啪| 国产精品黄色三级av| 精品欧美乱码久| ...日韩成人一区二区三区字幕| 看日韩美女二区三区免费操逼视频 | 91九九九逼| 婷婷中文字幕| 大香网站| 日韩欧美午夜一区二区| 福利视频网站| 超碰9 7女人 | 国产剧情AV不卡在线观看| 欧美性爱第一页久久| 啊啊啊好大好深| 国产中午字一暮区| 先锋音影AV| 抽查国产福利主播| 日本大片日本一区二区免费高清| 日本视频在线观看污污污| 中文字幕久久婷婷丁香五月天| 天堂网亚洲区手机版| 好爽免费视频,| 麻豆伊人网| 综合网欧| av操操不卡| 亚洲另类久操网| 亚洲黑丝在线| 天天爽天天爽| 狠狠爱综合网| 色婷五月| 另类小说五月天| www.激情| 操一区| 九九色热| 人妻久久久| a网站免费观看| 九九色精品| 大香蕉手机视频| 99re在线观看| 加勒比大香蕉视频在线| 日本三级中国三级99人妇网站| 国产又大又硬又长又粗| 99性爱在线观看| 另类 日韩 熟女| 国产中文字幕曰本毛片| 国产精品自在自拍视频| 一个人免费HD91视频| 五月丁香社区婷婷日韩欧美精品影院 | 色呦呦国产精品免费看| 黄色大片视频在线免费看| 亚洲国产成人精品女人久久久| 91伊人| 亚洲国产美女久久久久| 看免费一级在线播放毛片| 大屁股人妻女教师撅着屁股| 九九视频黄色片| 国产日韩在线播放av| 欧美天天干| 黄色性爱网网| 成功精品影院| 91亚洲不卡一区| 91美女视频在线| 久久精品国产久精国产| 91麻豆天美国产欧美高潮| 美女91网| 久久产精品一区二区三区电影| 综合久久久久久久久91| 国产对白刺激视频| 秋霞影音一区二区三区 | 1240青青草一区二区三区视频天爱| 亚洲AV无码乱码| 久久欲| 福利在线黄片| 日韩AV一区二区三区四四| 97国伦国色| 久久久精| 七月丁香婷婷| 在线a v| 开心激情婷婷| 99蜜桃臀亚洲成人在线观看| 欧美性Fer办公室秘书| 欧美加勒比| 久久久久久亚洲中文| 午夜福利成人免费视频| 97人肏| 性交一区二区在线播放| 好涩综合| 翔田千里一区二区三区奶水| 女人高潮大叫一级毛片| 亚洲AV无码| 热久久无毒不卡| 日韩欧美亚欧在线视频| 特级丰满少妇一级AAAA爱毛片| 床上啊啊啊一区二区三区| 亚洲精品欧洲精品| 欧美丝袜中文字幕07在线| 欧美日韩啪啪电影| 色色色欧美| 国产精品不卡一区二区三区| 午夜在线播放| 在线视频免费播放一区| 神马视频久久久久久| 亚洲男人天堂视频 | 久久伊人青青草| 久久久久久久9| a v网站在线播放| 精品国产一区二区三区久久久蜜臀 | 伊人黄色片| 神马精品视频| 99在线精品观看视频中文| 亚洲日本激情| 麻豆2区1区天美| 国产精品一区在线播放| 伊人精品久久网站| 国产精品乱人伊人网| 黑白配性爱AV成| 日本三级网页| 91网站18在线| 人妻色偷色噜| 久久男人的天堂国产| 中文字幕精品三级久久久| 无遮挡一级毛片视频免费的| 欧美后进式| 超碰吊日色| 国产视频一区二区免费| 校园春色亚洲无码| 2017人人操,人人摸| 亚洲一二三精品久久网| 欧美色乱| 农村妇女一级二级三级视频| 91痴汉| www.av在线观看| 搡老女人老91妇女熟女| 免费的很黄很污的全部视频| 国产嫩草精品A88AV在线| 加勒比海色香蕉婷婷| 东京热亚洲一区二区| 欧美少妇高潮| www狠狠| 色狠狠一区二区三区香蕉| 92人人操人人| 久草毛片| 亚洲国产激情国产av| 五十路熟女,国产欧美精品区一区二区三区 | 91国产精品在线看| 国产成人五月天丁香花| 伊人久久婷婷| 91bbbbbb| 色色热| 久久人| 91原创在线观看| 国产在线视频午夜精华在| 九九九网页| 国产9 9在线 | 亚洲| 色五月天AV| 欧美aa一级片| 成人久久久精品| 探花一区在线| 超碰导航97| 国产熟女少妇一区| 四虎国产精品永久在线囯在线| 亚洲不卡av在线| 日韩性爱1级片视频| 久久高清无码夜夜操| 中文字幕日本久久| 亚洲图片91| 日韩内射视频| 黄色片一区二区三区四区五区| 91激情综合| 久热超碰| 国产精品久久aV| 日韩欧美天天爽爽爽天天爽爽| 综合欧美日韩在线观看| 一区二区视频在看| 美女久久久久久久| 色综合av男人天堂| 欧美 色 亚洲| 99青青草国产视频| 国产欧美日韩精品中文| 快灬快灬 一下爽蜜桃在线观看 | 秋霞成人做爱| 超碰色美女| 国产久久久9999| 日韩欧美tv一区二区在线观看| 亚洲精品97p| ,国产乱人伦精品一区二区三区| 两女互慰AV高潮喷水在线观看| 亚洲在钱| 97操97色| 久久香蕉综合一本到3atv| 欧美国产婷婷久久| 大香网伊人久久综合网eew| 国产吞精a级片激情电影| 91免费看一区二区三区| 啊啊啊啊好大好硬啊啊啊啊啊| 国产毛片精品一区二区色欲黄A片| 视频一区二区三区精品| 亚洲玖玖爱| 97色色国产视频| 丁香久久| 自拍偷拍 高清无码| 男人午夜天堂| 蜜桃午夜视频一区二区 | 欧美97色| 公司1区2区3区精产精| 亚洲AO在线| 色色综合网站| 久久性爱网站| 中文字幕在线免费观看2| 欧美后入式| 亚洲色入欧美| 打av高清| 盗摄 精品 另类 一区| 丝袜美腿制服人妻二区中文字幕| 欧美组图日韩亚洲中文字幕| 精品制服美女中文一区二区三区| 国产精品2020| 日韩乱码Av| 亚洲超碰在线| 亚洲欧美日韩精品久| ji熟女.com| 熟妇综合一区二区三区| 亚洲男人天堂网站| 亚洲自拍青操视频| 欧美青青视频| 啊啊啊啊二区好大| 亚洲另类久操网| 中文字幕在线播放2中文字幕在线观看2| 大香蕉免费乱伦视频| 天天色黄色影院天天操| 中文字幕久久婷婷丁香五月天| 啪啪啪亚欧美视频| 99热欧美| 亚洲蜜臀精品视频久久| 青青伊人加勒比海| 久久爱超碰网| 91黑丝美女| 偷拍超碰| 性色国产东北露脸精品视频| 色九月综合| 超碰97在线 欧美 国产| 日本一区二区三区欧美日韩中文字幕| 五月天激情小说| 九九热精品| 婷婷色综合| 操久久久久久| 一区二区视频在线播放| 97日视频| av麻豆啪啪| 超碰这里只有精品| 亚洲情色图片区| 啊啊啊在线观看免费视频| 成人精品视频一区二区| 日韩二级| 久久最新视频免费观看| 色av中文字幕| 欧美亚洲涩涩| 青青草中日韩在线| 疯操AV| 中文字幕成人乱码熟女精品国50| 色97欧美| 一起草视频在线| 男女一进一出视频久久| 情趣丝袜无码操逼视频| 操逼天美3区| 欧美一级黄色18片免费看|