免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

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

D3.js置換檢驗散點圖:讓數據顯著性變得可見

D3.js置換檢驗散點圖:讓數據顯著性變得可見 這次做的項目叫D3.js研發(fā)置換檢驗散點圖。一句話說清楚用D3.js實現一個交互式散點圖散點圖本身展示兩組樣本在兩個維度上的分布同時在圖的下方實時呈現置換檢驗的零分布直方圖和觀測統(tǒng)計量參考線讓兩組數據是否顯著不同這個統(tǒng)計結論不再依靠肉眼猜測而是變成看得見的計算過程。起因是我們小組分析一次細胞實驗數據時出現了分歧。散點圖一畫出來樣本點明顯分成兩團實驗室同學直接說這次藥物處理絕對有效。我盯著圖看了十分鐘總覺得哪里不對——樣本量只有每組18個右上方有幾顆離群點兩團點之間其實還有不少交疊。你問我要不要拍板個結論我是不敢的。肉眼在散點圖上做判斷最容易高估差異的顯著性尤其當樣本量小、分布偏斜、還有離群值的時候。所以我決定做一個工具把散點圖和置換檢驗放進同一個界面里既展示原始數據的形態(tài)又給出基于重抽樣的顯著性判斷。這個項目適合三類人看一是經常畫散點圖但覺得只看圖不夠嚴謹的數據分析人員二是想了解置換檢驗如何落地到前端可視化產品里的開發(fā)者三是在校學生——你們學數理統(tǒng)計時會發(fā)現把檢驗過程用動畫放出來對理解p值這件事幫助極大。1. 散點圖為什么需要顯著性這個維度1.1 肉眼判斷到底錯在哪先回到那個分組對比的經典問題兩組數據畫在一張散點圖上怎么看有沒有差異大多數人看圖的順序是這樣的——先看兩組點的重心有沒有拉開再看兩個顏色云團的重疊面積最后下意識地認為分得越開差異越顯著。但散點圖的信息表達有個天然缺陷它展示的是原始數據點的位置卻完全隱藏了樣本量、分布形狀和抽樣波動這三項信息。舉例來說A、B兩組各20個點均值差2.0但每組內部標準差很大分布呈明顯的右偏。畫出來的散點圖可能看起來很清爽因為高維數據投影到二維平面上之后視覺上會被拉開可是如果你真正跑一個統(tǒng)計檢驗p值可能到0.15。反過來兩組各200個點均值差只有0.3圖上看基本是混在一起的但因為樣本量大p值可能小于0.01。這兩種情況單看散點圖都會得出錯誤結論——第一種高估差異第二種低估差異。人的視覺系統(tǒng)對距離敏感對樣本量和分布形態(tài)不敏感。換句話說散點圖回答的是長什么樣統(tǒng)計檢驗回答的是這種差別有多大概率是隨機造成的。兩者是互補關系不是替代關系。所以我在這張圖里強制加入檢驗結果就是希望看圖的人不要只停留在形狀層面。1.2 為什么是置換檢驗而不是t檢驗要做差異顯著性檢驗最常規(guī)的選擇是Students t檢驗但我在這個項目里特意選用了置換檢驗Permutation Test。兩者都檢驗兩組均值是否相等的原假設但對數據的前置要求完全不同。維度t檢驗置換檢驗前提假設近似正態(tài)、方差齊性無分布假設計算邏輯基于公式計算t統(tǒng)計量與p值通過重復打亂標簽構造零分布樣本量要求小樣本受限于正態(tài)性要求小樣本可以直接做窮舉置換計算成本毫秒級幾乎為零需要數千次重計算結果輸出一個p值零分布直方圖 經驗p值適用場景數據形態(tài)良好、追求效率分布偏斜、離群值明顯、需要可視證據選置換檢驗的原因很實際。我們那批實驗數據分布形態(tài)完全不像正態(tài)右尾特別長還有三個明顯的離群值。t檢驗對離群值高度敏感一個極端點就能顯著改變p值的方向和大小。置換檢驗沒有這個煩惱它的核心假設只有一個——如果分組標簽和觀測值沒有關系那么把標簽隨機打亂后統(tǒng)計量不會系統(tǒng)性地偏向某一邊。這個假設非常寬松幾乎適用于所有實際情況。更重要的原因在可視化上。t檢驗給你一個冷冰冰的p值而置換檢驗天然會產出一條完整的零分布曲線也就是原假設成立時統(tǒng)計量的概率分布。這條曲線本身就是一張圖把它和散點圖放在一起讀者能看到觀測統(tǒng)計量落在零分布的什么位置這個直觀程度是t檢驗沒法給的。1.3 項目的最終形態(tài)整個項目是一個純前端的交互工具數據以JSON或CSV形式加載。界面分為上下兩個區(qū)域上方SVG散點圖橫軸為第一維指標縱軸為第二維指標樣本點按分組著色。下方置換檢驗統(tǒng)計量的直方圖疊加一條豎線標記觀測統(tǒng)計量的位置以及p值文本。交互方面包含運行置換按鈕啟動打亂標簽的動畫并逐步累積直方圖。進度控制動畫速度、置換次數、暫停/繼續(xù)。分組切換左側提供維度選擇器切換散點圖的橫縱軸指標。刷選聯動在散點圖上框選區(qū)域后僅對選中的樣本子集重新做置換檢驗。這套形態(tài)基本覆蓋了我在實際分析里的全部訴求先看圖再檢驗檢驗過程還能講給別人聽。2. 置換檢驗的算法原理與JavaScript實現2.1 打亂標簽的實驗思維置換檢驗的統(tǒng)計學思想可以用一句話概括如果分組沒有真實差異那分組標簽就只是貼上去的記號把它們隨機重貼一遍結果不應該有系統(tǒng)性的變化。這句話展開就是標準流程計算觀測統(tǒng)計量。比如兩組均值差obsStat mean(B組) - mean(A組)。把所有樣本的標簽全部抹掉混合在一起。隨機給每個樣本重新分配標簽保持每組樣本量不變A組n1個B組n2個?;谛聵撕炛匦掠嬎憔挡畹玫揭粋€置換統(tǒng)計量。重復第3、4步N次比如1000次或10000次得到N個置換統(tǒng)計量。統(tǒng)計這N個置換統(tǒng)計量中絕對值不小于abs(obsStat)的比例。這個比例就是經驗p值。用生活化的話講這有點像洗牌實驗口袋里有40顆球20顆紅球20顆藍球每次隨機抽出20顆當成處理組其余當對照組算兩組球的平均重量差。如果原本的差異是真的那么隨機洗出來的差異很難超過真實差異如果能輕易超過說明真實差異可能在隨機波動范圍內。2.2 統(tǒng)計量選哪個均值差、t還是中位數差置換檢驗框架下只要你能定義一個衡量組間差異的數值就可以用于檢驗。但選擇不同統(tǒng)計量檢驗的敏感方向不同統(tǒng)計量特點適合場景均值差對離群值敏感檢測重心偏移數據形態(tài)良好、無強離群值時中位數差穩(wěn)健不受離群值干擾長尾分布、存在離群值t統(tǒng)計量均值差除以合并標準誤自帶標準化除了位置差異還關注離散度差異秩和統(tǒng)計量基于排序非參數化最徹底數據為等級變量、尺度不均時我這批數據最終選的是均值差作為演示統(tǒng)計量因為它的幾何意義最直觀散點圖上兩組點的重心連線投影到某個方向上就是均值差。但我在界面上保留了統(tǒng)計量切換的下拉框方便對比。實際使用中發(fā)現當數據里有明顯離群點的時候均值差和中位數差給出的p值差異能到一個數量級建議探索階段兩個都跑一遍。需要提醒一點統(tǒng)計量必須在置換之前先固定下來。不存在先看一下數據哪個統(tǒng)計量顯著再選哪個的做法那是數據窺探data snooping會讓p值失真。2.3 完整實現一個可嵌入項目的permutation模塊核心代碼我封裝成了一個ES Module方便其他項目中復用。// permutation.js function shuffleArray(arr) { // Fisher-Yates 洗牌 const a arr.slice(); for (let i a.length - 1; i 0; i--) { const j Math.floor(Math.random() * (i 1)); [a[i], a[j]] [a[j], a[i]]; } return a; } function mean(values) { return values.reduce((acc, v) acc v, 0) / values.length; } function calcStat(groupA, groupB, statType meanDiff) { const mA mean(groupA); const mB mean(groupB); if (statType meanDiff) return mA - mB; if (statType medianDiff) { const sortedA [...groupA].sort((x, y) x - y); const sortedB [...groupB].sort((x, y) x - y); const medianA sortedA[Math.floor(sortedA.length / 2)]; const medianB sortedB[Math.floor(sortedB.length / 2)]; return medianA - medianB; } // t 統(tǒng)計量均值差 / 合并標準誤 const pooledSE Math.sqrt( (groupA.length 1 groupB.length 1) ? ((groupA.reduce((s, v) s (v - mA) ** 2, 0) groupB.reduce((s, v) s (v - mB) ** 2, 0)) / (groupA.length groupB.length - 2)) * (1 / groupA.length 1 / groupB.length) : 1 ); return (mA - mB) / pooledSE; } export function permutationTest(values, labels, nPerm 10000, statType meanDiff) { const groupAValues values.filter((_, i) labels[i] 0); const groupBValues values.filter((_, i) labels[i] 1); const obsStat calcStat(groupAValues, groupBValues, statType); const pooled values.slice(); const nA groupAValues.length; const permStats new Float64Array(nPerm); for (let i 0; i nPerm; i) { const shuffled shuffleArray(pooled); const permA shuffled.slice(0, nA); const permB shuffled.slice(nA); permStats[i] calcStat(permA, permB, statType); } let extremeCount 0; for (let i 0; i nPerm; i) { if (Math.abs(permStats[i]) Math.abs(obsStat)) extremeCount; } // 分子分母都 1避免 p 值被低估為 0 const pValue (extremeCount 1) / (nPerm 1); return { obsStat, permStats, pValue }; }這里有兩個細節(jié)必須說明。第一shuffleArray用的是Fisher-Yates洗牌算法時間復雜度O(n)且每個排列的出現概率均勻。直接用Array.prototype.sort(() Math.random() - 0.5)洗牌是新手最常見的錯誤這種寫法產生的排列概率不均勻會導致置換分布產生系統(tǒng)性偏差嚴重時p值會偏移幾個百分點。第二slice(0, nA)這種方式只適用于兩組切分。實際項目里如果有更多組就要改成permutationTest接受組別數并循環(huán)切分別在這塊偷懶。2.4 p值計算的兩個容易被忽略的細節(jié)p值的規(guī)范定義是在原假設下觀測結果或比觀測結果更極端的概率。在置換檢驗里最直接的做法是統(tǒng)計置換統(tǒng)計量絕對值超過觀測統(tǒng)計量絕對值的比例。但這里有兩個陷阱。第一個陷阱是p值為0。如果置換次數是10000次而10000次置換里恰好沒有一次超過觀測值你會算出p0。這并不代表絕對不可能只代表你的置換次數不夠分辨小概率。改進方法統(tǒng)一是加一校正分子加1、分母加1。這樣既避免了p0也保留了觀測數據本身就是一次天然置換的語義——原始標簽是所有打亂方案中的一種觀測統(tǒng)計量必然包含在零分布里所以最小經驗p值應為1/(N1)。第二個陷阱是雙側檢驗與單側檢驗。我在代碼里用的是Math.abs比較這是雙側檢驗適合回答兩組是否有差異。如果業(yè)務問題是處理組是否嚴格高于對照組則應改為單側比較統(tǒng)計permStats[i] obsStat的比例。同一個數據集雙側和單側的p值可能差出一倍寫代碼前務必想清楚要回答哪種問題。3. 從比例尺到圓點D3.js散點圖組件搭建3.1 為什么在這個場景里選D3.js現在可視化圖表庫很多ECharts功能強大、上手快Plotly甚至支持Python調用為什么我固執(zhí)地選了D3.js我的理由只有一條這個項目的核心不只是畫圖而是把統(tǒng)計過程掛在圖形狀態(tài)上。散點圖的每一顆圓點在置換動畫中要反復改變顏色來呈現標簽打亂過程散點圖下方的零分布直方圖要在每次置換計算后動態(tài)新增一根柱子觀測統(tǒng)計量豎線要實時移動。這種數據和圖形元素一一綁定、隨時被業(yè)務邏輯驅動的模式是D3.js的看家本領因為它基于數據綁定data join模型開發(fā)天然支持enter/update/exit生命周期。方案學習成本自定義交互大數據性能數據綁定ECharts低配置項為主復雜交互要寫擴展內置Canvas性能好弱Plotly低有回調機制但靈活度一般中等弱D3.js高完全可控基于DOM/SVG/Canvas取決于寫法強如果只是出圖交給領導看我肯定推薦ECharts但要做一個交互式統(tǒng)計教學/分析工具D3.js的自由度值得多花時間。3.2 從業(yè)務數據到視覺通道的映射散點圖本質上做的是數據到視覺通道的映射。在我這個項目里每條樣本記錄有多個數值字段我預先定義了一個配置對象const channels { x: { field: dose, label: 劑量(μg/mL) }, y: { field: response, label: 響應值 }, color: { field: group, label: 分組 } };D3的關鍵概念是比例尺scale它是數據值域到屏幕像素域的橋梁。橫軸和縱軸分別建立一個線性比例尺顏色則使用序數比例尺const xScale d3.scaleLinear() .domain(d3.extent(data, d d[channels.x.field])) .range([margin.left, width - margin.right]); const yScale d3.scaleLinear() .domain(d3.extent(data, d d[channels.y.field])) .range([height - margin.bottom, margin.top]); const colorScale d3.scaleOrdinal() .domain([0, 1]) .range([#0077bb, #ee7733]); // 藍橙色盲友好這里range([height - margin.bottom, margin.top])是SVG坐標系和數學坐標系方向相反導致的y軸必須從底部映射到頂部新手寫反了會把圖畫成倒置的。顏色選擇方面我沒有用紅綠組合這是考慮到紅綠色盲人群約占總人口8%換成藍橙對比能明顯擴大受眾而且在后臺評審場景下藍橙在黑白打印時的灰度差異也更大。3.3 SVG散點圖的data join核心代碼將數據綁定到圓點元素的核心代碼如下const circles svg.selectAll(circle) .data(data, d d.id) .join( enter enter.append(circle) .attr(r, 5) .attr(cx, d xScale(d[channels.x.field])) .attr(cy, d yScale(d[channels.y.field])) .attr(fill, d colorScale(d[channels.color.field])) .attr(fill-opacity, 0.8), update update .attr(cx, d xScale(d[channels.x.field])) .attr(cy, d yScale(d[channels.y.field])) .attr(fill, d colorScale(d[channels.color.field])), exit exit.remove() );.join()是D3 v6以上版本的統(tǒng)一入口比舊版的enter().append().merge()更簡潔。一個重要的交互細節(jié)是散點圖坐標變化時比如切換維度不建議直接改圓點的cx/cy而是用transition()讓圓點平滑移動這樣讀者能保留這些點在空間上如何重新分布的認知線索circles.transition().duration(400) .attr(cx, d xScale(d[channels.x.field])) .attr(cy, d yScale(d[channels.y.field]));3.4 零分布直方圖的繪制散點圖下方需要放一個零分布直方圖。D3從v7開始提供了d3.bin作為直方圖計算的工具用法如下const bins d3.bin() .domain(xDomainOfPermStats) .thresholds(40)(permStatsArray); svg.selectAll(rect) .data(bins) .join(rect) .attr(x, d xScaleHist(d.x0)) .attr(width, d xScaleHist(d.x1) - xScaleHist(d.x0) - 1) .attr(y, d yScaleHist(d.length)) .attr(height, d yScaleHist(0) - yScaleHist(d.length)) .attr(fill, #cccccc);這里有個工程細節(jié)直方圖的bin數量我固定用40個而不是讓D3自動推導原因是用戶通過滑塊改變置換次數時bin數要保持一致否則直方圖形狀會跳變破壞零分布是穩(wěn)定形狀的直覺。直方圖x軸的范圍也要固定取permStats的全局最小和最大否則每次計算完后范圍漂移觀測統(tǒng)計量豎線的相對位置就無法比較。同時疊加一條觀測統(tǒng)計量的豎線svg.append(line) .attr(x1, xScaleHist(obsStat)) .attr(x2, xScaleHist(obsStat)) .attr(y1, 0) .attr(y2, heightHist) .attr(stroke, #d7191c) .attr(stroke-dasharray, 4,3);紅色虛線很顯眼和藍橙點顏色區(qū)分開即使色盲用戶也能靠線型區(qū)分。4. 動畫設計把標簽打亂過程變成看得見的分布生長4.1 標簽打亂動畫的核心邏輯純算置換檢驗不需要任何動畫。但我的初衷是讓讀者看見零分布的形成過程所以加入了打亂標簽的動畫。動畫的邏輯非常直接每次置換我們只是重新分配了顏色標簽樣本在二維平面上的位置完全不動。這一點千萬要在代碼里保持住——只更新fill屬性不動cx和cy。如果讓點和顏色一起挪動視覺上會誤以為樣本本身在變而真實假設是樣本不變只有標簽在變這個區(qū)別是整個動畫教學價值的核心。動畫狀態(tài)機我分為三態(tài)空閑idle、運行running、暫停paused。核心是一個定時器驅動的循環(huán)let animationTimer null; let frameCount 0; function runAnimation() { if (animationTimer) return; animationTimer d3.interval(() { // 每次 tick 執(zhí)行一次置換計算并更新界面 const permResult performOnePermutation(); updateHistogram(permResult); updateColorLabels(permResult.labels); frameCount; if (frameCount permCount) { animationTimer.stop(); animationTimer null; finishAllPermutations(); } }, speed); }這里的performOnePermutation每次只計算一次置換這樣動畫越積越多直方圖的柱子而不是一次性算完10000次再統(tǒng)一繪制。讀者會看到一個概率分布從無到有地長出來的過程我在教學演示中實測這種累積式動畫比一次性成圖更能讓人理解p值就是極端情況占總置換次數的比例。4.2 配色切換的平滑處理一個視覺效果上的細節(jié)當動畫跑得很快時顏色標簽的閃爍會很刺眼。我加了兩個緩解手段。第一圓點的fill-opacity從0.8降到0.55讓顏色切換的視覺沖擊減輕同時緩解了大量圓點重疊時全是一種顏色的假象。第二每次動畫幀之間不直接修改fill顏色值而是通過CSS過渡circle.perm-point { transition: fill 80ms ease, fill-opacity 80ms ease; }這樣每一幀切換時會有輕微的漸變過程眼睛不容易疲勞。但如果動畫速度超過每秒20幀這種過渡會帶來殘影所以我把過渡時間控制在80ms實際手感比較合適。4.3 刷選聯動局部子集的置換檢驗散點圖還有一個隱藏功能刷選。用D3的brush模塊框選區(qū)域后界面會只保留框選范圍內的樣本點并自動重新計算置換檢驗和零分布。這實際上是在回答一個更深入的問題如果只看這部分樣本組間差異還顯著嗎這個功能在探索性分析里非常有用——往往整體不顯著但某個子區(qū)域內兩組分離明顯這提示可能存在交互效應或亞組差異。刷選的核心實現是監(jiān)聽brush事件const brush d3.brush() .extent([[margin.left, margin.top], [width - margin.right, height - margin.bottom]]) .on(brush end, onBrush); function onBrush(event) { const selection event.selection; const selectedIds new Set(); if (selection) { data.forEach(d { const px xScale(d[channels.x.field]); const py yScale(d[channels.y.field]); const [[x0, y0], [x1, y1]] selection; if (px x0 px x1 py y0 py y1) { selectedIds.add(d.id); } }); } // 用 selectedIds 過濾數據重跑置換檢驗 runPermutationOnSubset(selectedIds); }刷選后未命中的圓點用淺灰色占位顯示、命中區(qū)域保持原色這樣讀者能理解刷選的作用范圍。一個必須做的防御性處理是散點圖的坐標軸經過比例尺換算后有小數誤差我在比較時用了和完成邊界包含判斷這樣刷選邊界上的點不會反復抖動。5. 大樣本與高次數場景下的計算與渲染優(yōu)化5.1 置換次數到底該取多少置換檢驗的p值分辨率由置換次數決定。經驗法則很簡單如果只需要判斷p值是否小于0.051000次置換足夠p值標準誤差約為0.014。如果要穩(wěn)妥地報告p值到兩位小數建議10000次。如果面對的是發(fā)表級嚴謹分析且p值接近臨界值建議50000到100000次。置換次數與p值標準誤的關系滿足公式SE(p) ≈ sqrt(p(1-p)/N)其中N是置換次數。p在0.05附近時N1000對應SE約0.0069N10000對應SE約0.0022。我默認設置的10000次在絕大多數業(yè)務的判斷顯著與否需求上足夠穩(wěn)。從計算量上看10000次置換、每組100個樣本、統(tǒng)計量取均值差在JavaScript主線程里跑大約需要幾百毫秒到1秒。偶爾會覺得卡但總體上能接受。一旦樣本量上升到5000個點、置換次數50000次主線程就會明顯阻塞界面白屏好幾秒。5.2 SVG和Canvas的取舍D3.js既能畫SVG也能畫Canvas。當樣本點超過3000到5000個時SVG的DOM節(jié)點數量會讓瀏覽器的渲染性能直線下降拖拽、刷選、動畫全部變得不流暢。這時我建議把散點圖層切換到Canvas只保留文字標簽和坐標軸走SVG。Canvas實現的散點圖層大致是這個形狀const canvas document.querySelector(#scatter-canvas); const ctx canvas.getContext(2d); function drawScatter(data, xScale, yScale, colorScale) { ctx.clearRect(0, 0, canvas.width, canvas.height); data.forEach(d { ctx.beginPath(); ctx.arc(xScale(d[channels.x.field]), yScale(d[channels.y.field]), pixelR, 0, 2 * Math.PI); ctx.fillStyle colorScale(d[channels.color.field]); ctx.globalAlpha 0.6; ctx.fill(); }); }注意Canvas方案需要自己處理globalAlpha和圖層疊加不涉及enter/update/exit因此對動態(tài)修改顏色的動畫支持反而比SVG更輕量——每次重繪一幀即可。缺點是無法像DOM那樣方便地綁定事件做點選、tooltip如果確實需要在Canvas上做高精度點選一般要用四叉樹索引做快速最近點查詢。5.3 Web Worker把計算從主線程里挪走最徹底的性能方案是把置換檢驗計算放進Web Worker主線程只負責接收結果并繪制。這樣即使置換次數10萬次界面也不會卡死。我封裝了一個worker文件// permutation.worker.js self.onmessage function (e) { const { values, labels, nPerm, statType } e.data; const result permutationTest(values, labels, nPerm, statType); // 結果里可能包含長達 nPerm 的 Float64Array self.postMessage(result, [result.permStats.buffer]); };主線程這樣調用const worker new Worker(permutation.worker.js); worker.onmessage (e) { const { obsStat, permStats, pValue } e.data; updateHistogram(permStats, obsStat, pValue); workerRunning false; }; worker.postMessage({ values: currentValues, labels: currentLabels, nPerm: permCount, statType: currentStatType });這里有個性能關鍵點postMessage傳遞Float64Array時如果數據量很大默認會發(fā)生拷貝。給postMessage傳入transferable列表就是代碼里的第二個參數[result.permStats.buffer]就能把ArrayBuffer的所有權轉交給主線程O(1)完成傳輸而不是O(n)拷貝。這點在高頻次置換動畫里差異非常明顯。需要權衡的是Web Worker里不能訪問DOM所以如果你的實時動畫需要每個置換幀都更新UI就必須改成批處理模式worker每次計算一批比如200次置換后postMessage一次主線程收到一批就更新一次直方圖。這樣UI仍然能流暢更新計算也不阻塞。6. 開發(fā)過程中踩過的坑與最終自檢清單6.1 隨機種子可復現性比看起來重要置換檢驗是隨機算法但分析場景里可復現非常重要。同一份數據這次跑出來p0.038下次跑出來p0.047不管是因為隨機種子還是機器差異都會讓業(yè)務同事質疑結果。我在第一版里直接用Math.random()很快發(fā)現復現性很差。后來引入了帶種子的隨機數生成器用mulberry32實現成本極低function mulberry32(seed) { return function () { seed | 0; seed (seed 0x6D2B79F5) | 0; let t Math.imul(seed ^ (seed 15), 1 | seed); t (t Math.imul(t ^ (t 7), 61 | t)) ^ t; return ((t ^ (t 14)) 0) / 4294967296; }; }把這一函數替換Math.random并把種子暴露在界面上默認值比如20240101任何人重新打開頁面、設置相同種子就能復現完全相同的零分布和p值。這一點在團隊協作和論文復現里價值巨大。6.2 零分布直方圖與散點圖的視覺比例尺沖突我犯過的另一個問題是兩套圖各用各的配色。散點圖用的是藍橙直方圖為了表示零分布用了灰色觀測統(tǒng)計量豎線用了紅色這本身沒問題。問題出在直方圖的x軸范圍早期版本直接取d3.extent(permStats)動態(tài)范圍每次置換次數改變橫軸范圍就跟著飄移豎線位置也就無法和之前的畫面比較。解決辦法是給直方圖設置一個與統(tǒng)計量理論上界匹配的固定domain。當用戶切換統(tǒng)計量時豎線位置變化幅度很大有時會跑到可視范圍之外。我特意保留了這個出界行為而不是自動縮放——豎線出界本身就能傳遞一個信息當前統(tǒng)計量遠遠超出零分布的尋常范圍p值極小。這種保留沖突的做法反而更符合統(tǒng)計直覺。6.3 邊界問題與最終自檢清單最后整理幾個容易被忽略的邊界問題重復值數據中有大量相同值時置換分布的連續(xù)性會退化。均值差會離散化直方圖出現梳狀空隙視覺上很怪。可以在直方圖上疊加核密度平滑曲線或者如實標注數據存在重復值p值為保守估計。方差為零如果某組在某維度上所有值相同均值差依然能算但t統(tǒng)計量會出現除零代碼里對合并標準誤做了分母保護。樣本量差距懸殊A組2個樣本、B組500個樣本時置換檢驗的統(tǒng)計功效會很弱。界面上要顯示兩組樣本量避免用戶對結果過度解讀。多重組別實際數據可能不止兩組我目前只做了兩組對比。擴展思路是兩兩組合做多重檢驗再用Bonferroni或FDR校正這部分后續(xù)再迭代。最終我把這些教訓沉淀成了一份清單每次改完代碼都核對一遍隨機種子是否可復現。置換次數是否滿足p值精度需求。雙側/單側檢驗是否與業(yè)務語義一致。p值是否做了分子分母加一校正。直方圖domain是否穩(wěn)定不隨數據量變化跳變。散點圖顏色是否支持色盲用戶。大數據量時是否切到Canvas或Web Worker。每次交互后動畫狀態(tài)機是否正確復位——尤其防止重復點擊啟動多個定時器。把個人經驗放到最后說一句這類統(tǒng)計可視化項目最花時間的其實不是統(tǒng)計算法也不是D3的API而是如何讓統(tǒng)計邏輯和視覺交互真正咬合。置換檢驗本身是幾十行代碼的事但當你試圖把零分布、觀測統(tǒng)計量、p值這些抽象概念投影到屏幕上讓非統(tǒng)計背景的人也能一眼讀懂時每一個像素的選擇都藏著統(tǒng)計語義。先把統(tǒng)計原理吃透再來談畫圖順序千萬別顛倒。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
久久这里只有精品无码| 婷婷丁香五月亚洲| 六月婷婷无码| 激情亚洲婷婷| 丁六月激情| 色久99| 五月天激情小说网| 婷婷五月色色| 色五月人妻| 婷婷丁香77777| 超级碰碰一区| Av狠狠色丁香婷| 五月丁六月香av| 丁香性爱在线视频| 五月天大香蕉| 91精品综合久久久久久五月丁香| www.婷婷六月天| 五月丁香久人妻中文| 激情综合网婷婷五夜| 99热日韩| 亚洲视频图片婷婷五月| 婷婷五月色亚洲| 激情久久久| 色色影院黄大片| 亚洲视频在线观看| 亚洲亚洲人成综合网络| 五月丁香久久| 天天色天天日| AV九九| 婷婷五月天狠狠搞干| 婷婷激情五月天7| 色五月中文字幕| 天天色综网| 婷婷五月天伊人网| 夜夜爽天天干| 婷婷激情社区| 五月色影院| 九九無妻| 九九综合| www.99热在线观看| 丁香婷婷五月天激情四射| 丁香五月六月欧美| 欧美日本一区二区三区| 久久久精品人妻录| 日韩在线五月天婷婷| 99热精品10| 五月天社区| 久久综合色五月| 色婷婷六月| 五月之婷婷| 97色色婷婷| 婷婷狠狠青青| 五月天大香蕉AV| 久久密臀婷婷| 免费看片在线观看| 天堂网啪啪| 97操碰日本女人| 激情内射人妻1区2区3区| 欧美韩国日本| 97超级碰| 九九综合网色全集 | 久久久精品人妻| 99久在线精品| 色五月激情网| 99ree6| 国产精品99久久久久久久女警 | ww超碰在线| 99热激情| AV人人操| 日韩成人综合网| 色欲色香综合网| 色播综合| AA片在线观看视频在线播放| 中文字幕丰满乱孑伦无码专区 | 久热re视频在线观看网站| 久久九九思思| 婷婷情色五月天| 欧美性丁香色色五月天干干| 91精品久久久久、久五月天| 狠狠色噜噜狠狠狠狠综合| 婷婷丁香五另类网站| 日韩 中文 欧美| 丁香九月激情| 免费视频在线观看的网站| 9国产在线视频| 丁香五月 性爱| 日操夜操天天操不卡| 蜜臀av 粉嫩av 懂色av| 精品人妻在线| 开心婷婷五| 久久五月激情网| 狠狠搞亚洲| 色偷偷五月天| 91婷婷五月天综合视频| 婷婷色五月色| 色婷婷综合视频| 他改变了拜占庭| 9有码中文| 午夜成人AV在线| 综合天天综合| 久草热在线视频| 天天色视频| 激情网 久久| 91视频人人做97| 99re66热这里只有精品| 久久六月综合| 日韩av在线电影| 九九九精品视频免费观看| 婷婷五六日| 天天干天天色综合| 欧洲第一无人区观看| 婷婷丁香精品视频在线观看| 日日骑夜夜撸| 91婷婷五月天嫩女| 国产精品涩涩涩视频网站| 9l视频自拍九色9l黑人| 日韩欧美一级大黄网站| 久久性爱网| 日亚二欧美| site:picc-up.com| 婷婷大香蕉| 最新精品视频99| 玖玖@三月天天丁香婷婷| txt五月激情四射网综合俺也来了| 伊人干综合| 伊人干练久| 丁香五月开心亚洲| 大香蕉网 久久| 四色永久成人网站| www.狠狠| 丁香五月久久社区| 就去涩涩丁香五月天| 啪啪婷婷五月天激情| 六月丁香婷婷综合影院| 五月丁香拍拍激情综合| 五月婷婷综合在线| 丁香五月婷婷亚洲色图| 色婷婷亚洲精品天天综| 99热欧美| 深爱激情五月婷婷| 五月天六月色| 久人人操| 日日综合网| 色五月综合网| 大香蕉久久伊人婷婷五月丁香| 狠色色狠网| 综合色99| 大香蕉啪啪啪| 久热9| www日本熟妇99在线视频| 亚洲精品国产setv| 久久五月天婷婷| 嫩草极品| 影音先锋人妻出差| 日韩AV一区二区三区| 婷婷丁香五月天中文字幕| 99国产精品白浆在线观看免费 | 五月婷婷欧美激情| 奇米影视在线视频| 五月婷婷激情网| 1234操逼网| 婷婷丁香五月在线播放| 踪合专区啪啪| 五月丁香婷中文| 超碰熟女农村在线69| 亚洲日韩人妻操逼| 99自拍视频| 91热在线| 狠狠搞狠狠操| 激情综合五月激情XXXX| 婷婷五月激情综合| 婷五月天在线草| 久久婷婷五月天| 久久婷狠狠色| 99热这里只有精品青草| 亚洲综合视频天天精品| 五月婷婷综合在线| 九九九午夜影院成人| 俺去也五月| 粉嫩av蜜桃av蜜臀av| 99精品在线观看| 综合色影院| www.91.com黄| 久久综合久色欧美综合狠狠| 久热免费| 亚洲小视频免费看| 成人精品网站在线观看| 26uuu精品国产| 日本本土色网第一区| 疯狂做受XXXX高潮A片| 四色女婷婷| 丁香色色五月| 色五月激情网| 五月丁香六月停停| 亚洲综合视频在线| 蜜臀综合久草| 涩五月婷婷| 激情婷婷综合| 亚洲性视频| 26UUU欧美| 激情的五月| 丁香五月97视频| 五月婷婷深深爱| 丁香婷婷六月婷婷六月婷婷六月婷婷| 亚洲天堂制| 4399在线日本A片| 激情综合五月激情17| 丰满少妇猛烈A片免费看观看| 狠狠五月综合在线| 丁香五月成人| 久久香蕉婷婷| 丰满少妇乱A片无码| 久久99网| 五月天激情婷婷丁香| 色婷婷性爱| 久久只有18视频| 最新五月天婷婷影| 天天噜天天插| 婷婷六月天天| 另类图片五月激情| 九九热青草| 久久伦乱| 五月激情综合美女久久| 激情纯色婷婷五月天在线不卡视频| 亚洲天堂九九九| 五月天播播| 婷婷久久亚洲| 欧美va| 中文字幕精品在线观看| 97在线日韩| 夜夜撸夜夜骑| 日韩一级片| 夜夜操天天爽| 亚洲小说欧美激情| 亚洲色情免费网| 狠狠色噜噜狠狠| 久久五月婷婷综合网| 99ri精品视频在线观看| 国产精品色婷婷久久久精品| 五月婷婷六月丁香在线| 久久人妻伦理| 久久性爱视频网站| 五月天成人综合| 婷婷五月丁香基| 婷婷丁香成人| 精品思思久久| 思思久久网| 伊人久久大香线蕉av一区| 日韩99无码| 无遮挡国产高潮视频免费观看 | 色婷婷色综合久久精品V| 激情深爱五月天| 久青操| 亚美欧色影院| 色播五月婷婷| 色情久久久| 久久99网| 熟女网站久久| 99热精品在线播放| www.色婷婷| 日韩成人电影AV| 久久性爱视频网站| 成人综合网站| 日本波多野结衣视频| 激情六月天| 五月丁香六月| 久久久久久久11111111111| 久久人人妻| 色婷婷五月在线| 99碰超| 91久久久久久久久久久| 亚洲日本韩国| 九九99视频精品| 五月天婷婷Av| 99色五月| 天天肏屄夜夜爽| 深爱五月中文字幕| 色五月欧美| 99热在线观看免费精品| 五月天婷婷激情| 人人噜天天上| 9久热免费视频99| 丁香五月色五月| 亚洲激情综合网| 久热人妻| 成人做爰A片免费看视频| 亚洲色频| 狠狠干.com| 一区无码| 热99精品视频| 噜噜色天天开心| 开心婷婷五| 色五月丁香五月激情五月激情| 天天干狠狠操| 日日干天天爽| 激情九月综合| 国产五月视频| 五月天婷婷綜合院| va婷婷在线| 天天艹夜夜爽| 色五婷婷开心缴| 91丨九色丨高潮丰满日本| 九九热黄色| 天天爽天天日| 亚洲综合碰| 五月丁香六月婷婷开心网| 思思热在线视频99| 大香蕉九九| 搡BBBB搡BBB搡18| 666555。COm毛片| 丁香五月激情啪啪啪| 18久久| 婷婷丁香射射| www.久热| 香蕉AV福利精品导航| 成人精品免费在线观看| 97人人干人人操| 婷婷六月天亚州| 综合久久99| AV电影在线播放| 亚洲熟妇AV乱码在线观看| WWW色色色COM| 射区导航| 婷婷娱乐丁香综合网| 99久高清视频| 五月天婷婷激情网| www.日日夜夜.com| 国产无遮挡又黄又爽免费网站| 色婷婷四色| 精品久色| 婷婷丁香六月天| 99热9| 91人妻九色大屁股| www.婷婷五月天啪啪| 色婷婷亚洲精品天天综| 亚洲精品V天堂中文字幕| 亚洲综合激情五月天婷婷| www.色九月| 五月婷久久| 欧美噜噜久久久XXX| 青青热久精品视频在线观看| 丁香激情五月少妇| www.国产色| 国产成人AV| 91五月花丁香| 婷婷永久在线| 色五月色综合| 深爱五月天| 色综合久久44| 色婷婷六月| 婷婷黄色五月| 激情五月激情综合俺也去婷婷小说| 99成人精品六| 噜噜狠狠色综合久| 久久久中文| 日韩精品一区二区三区,四区,五区视频| 大香蕉久久伊人网| 色噜噜狠狠色综合日日| 三级毛片视频| 欧美日韩99| 欧洲日韩一区二区三区| 五月婷婷激情久久| 爆乳熟妇一区二区三区四区| 激情综合五月| 综合激情五月天六月婷免费视频| 天天做天天爱天天爽| 最新无码专区| 色色综合色视频| 99热99热在线| 五月婷婷五月天| 亚洲爆乳无码精品AAA片蜜桃 | 五月婷婷激情啪啪| 丁香五月,激情五月,深爱五月| 亚洲人妻av伦理| 五月天久久久| 99热最新| 情情五月天色| 综合久久丁丁香婷| 综合激情视频| 久久久久久久8| 人人爱摸视频| 色情综合| 成人无码精品1区2区3区免费看 | 狠狠爱综合| 九九五月天| 欧洲不卡视频| 国产噜一噜天天噜| 熟女人妻视频| 思思re99视频在线观看| 色婷婷AV在线| 婷婷色导航| 91viP在线看| 日日天天干| 亚州精品色情无码A片| 色综合久久久久| 99极品视频| av在线资源| 丁香五月激情婷婷激情| 任我肏视频精品| 五月天婷婷在线AN| 97亚洲色 torrent magnet| 日日噜噜夜夜狠狠久久丁香六月| 激情五月五月五月婷婷| ady狠狠入| 久草大| 538任你爽| 五月天久久婷婷| ,99视频久久| 久久性爱网| 99热无码| 综合狠狠伊人| 色九九丁香九月色九九色| 五月婷婷久久大香蕉| 国产欧美日韩性爱| 婷婷之玖玖| 婷婷91| 婷婷六月色丁香视频在线观看| 夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂亚洲亚洲亚洲亚洲亚洲亚洲亚洲亚洲色 | 久热天堂| 99国产在线| 天天 青草 丝袜制服 在线| 操日本色| 亚洲视频在线观看| aa久久| 五月婷婷深深爱爱| 九月激情综合婷婷| 九九色情网站| 99在线精品视频| 六月婷婷五月天| 99色综合| 亚洲AV成人无码电影| 久久丁香五月天| 在线可以看的av网址| 婷婷精品在线| 亚洲在线成人| 成人亚洲精品久久久久 | 婷婷五月天日本无码| 激情久久久久久久久久久| 色色热| 这里只有精品在线看| 激情综合久久| av无码电影| 天堂无码人妻精品AV一区| 99热97| 开心五月婷婷99| 99久久99九九九99九他书对| 五月天婷婷激情网| 在线五月婷| 五月丁香啪啪| 天天色天天| 人人干av| 天天色天天爱天天爽| 超碰在线国产| 九九热超碰| 9 1在线视频| 琪琪色网在线| 五月婷婷啪啪网| 久热91精品| 五月天色丁香| 99re思思热这里| 日本wwww在线| 超碰九九热| 2025中文在线视频字幕免费观看| 色婷婷伊人激情在线观看| 婷婷激情社区| 伊人久久婷婷| 久久久久久久,99精品视频| 色婷婷五月天在线观看| 丁香婷婷五月天校园春色| 超碰在线caop| 91婷婷在线| 99热综合在线| 99热色无码| 九月婷婷久久久| 国产激情综合| 99这里有精品久久97| 色婷婷丁香综合中文字幕| 青青艹b| 亚洲VA在线| 色婷婷五月开心六月综合| 琪琪色五月天| 99热在线观看| 青青热久久综合| 天天日人人| 99综合婷婷五月| 丁香六月av| 久久精品国产色| 色播五月丁香综合| 婷婷五月天综合中文| 午夜国产精品AV在线播放| www.minyis.com【JT】国内CDN落地页保证转化QQ2101460746 | 精品成人在线观看| 大香蕉伊人99| 夜夜撸日日操| 午夜69成人做爰视频| 久久在线视频免费观看| 九九热这里只有精品5| 五月丁香六月激情| 大天天伊人| 五月天天天开心激情网| 99碰碰| 丁香五月婷婷综合激情啪啪啪| 97婷婷狠狠| 夜夜操狠狠操天天操| 婷婷伊人久久| 亚洲啪啪精品| 中文字幕一色哟哟哟哟| 91狠狠综合久久| 99热免费在线| tingtingzonghewang| 欧美激情综合色综合啪啪五月| 精品爱欲五| 久久这里有精品| 深爱五月婷婷| 婷婷综合五月色播| www.日日日.com| 五月婷色| 九九99精品视频| 色在线免费观看| 少妇性按摩无码中文A片| 综合色99| 97热精品| 99视频这里有精品| 99色免费观看全部| 亚洲第一精品成人999久久精品| 综合在线网| 久久丁香五月| 国产精品美女| 五月丁香大相交| 日本三级色| 九九色婷| 日韩黄在免| 日本欧美成人片AAAA| 91精品久久久久久综合五月天| 五月丁香啪啪| 婷婷五月天天天| 色欧洲| 五月天婷婷激情春色小说| 久久亚洲婷婷综合色五月| 五月婷婷与六月丁香图片激情| 97在线日本| 亚洲妇女熟BBW| 免费看欧美成人A片无码| 色色色五月婷婷| 影音先锋毛片网站| 伊人在线另类| 九色porny在线观看激情四射| 操B无码视频国语| 92久久精品一区二区| 人人操碰| 同性gv国产精品一区二区| 狠狠狠狠狠干| 五月丁香婷婷婷激情爱爱| 色欲五月丁香| 91无码一起草| 亚洲国产成人AV在线 | 天天插天天插天天日| 亚洲综合在线视频| 婷婷六月开心网| 538久久| 五月色 亚洲| www.久久五月天.com| 狠狠久综合| 99热精地址| 亚洲最大五月天成人网| 天天做天天爱| 人人干av| 色婷婷香蕉丁丁网| 国产成人综合在线| 激情性爱五月天| 日本狠狠干| 色九九九综合| 婷婷六月激情综合| 俺去婷婷 丁香| Www.婷婷五月| 丁香涩涩爱| www婷婷| 久噜久噜| 激情五月丁香婷婷| 91狠狠综合久久久| www激情| 免费在线观看欧美激情xx小视频| 五月婷婷性爱网| 色婷婷成人在线| 久久五月天婷婷| 亚洲五月婷| 色婷婷88| 玖玖爱资源站| 色五月首页| 99在线精品视频免费| 91久久久久久久| 国产白丝在线一区| 婷婷伊人网| 中文字幕婷婷五月天| 婷婷六月丁香五月| 亚洲综合新99视频| www.9色色色| 激情五月天开心总和网| 99亚洲精品视频| 亚洲99精品欧美一区| xxxx五月天色色| 九九热精品| 丁香六月婷婷综合欧美| www激情| peg 2区三区四区的| 极品少妇XXXX精品少妇偷拍| 五月婷在线色视频| 狠狠综合色网| 色婷五月| 内射激情在线| 婷婷性爱视频在线| 四色99久久| 亚洲婷婷丁香五月亚洲| wwww.9免费视频| AV在线观看网站| 26uuu视频欧美| 国产日产亚洲系列最新| 婷婷色操| 色吧五月婷婷六月丁香| 色情五月天导航| 九热精品| WWW.99热| 五月婷婷六月天| 亚州美女| 五月天丁香综合久久国产| 超碰人妻在线| 婷婷综合五月天激情| 亚洲天堂久久| 色色色网站| 婷婷五月天改成什么了| 日韩欧美性爱| 农村熟妇高潮精品A片| 26UUU欧美| 秋霞免费三级片| 国产毛片精品一区二区色欲黄A片| 99视频这里只有精品10| 婷婷丁香色五月亚洲| 国产九月婷婷| 精品一二三区久久AAA片| 99视频在线观看网址| 91碰碰| 亚洲激情Av| 欧美成人精品A片免费一区99| 五月好婷婷| aⅤ79成人片| 91九色成人原创视频| 激情99| 久久国产色| 青青草六月丁香| 亚洲av成人在线| 丁香五月婷婷啪啪视频| 色综合色色| 丁香激情久久| 丁香婷婷成人网| 亚洲精99| www.夜夜操.con| 欧洲亚洲午夜| 婷婷免费视频| www.ywav| 日韩黄色中文字幕| 91狠狠综合久久| 婷婷五月花| 开心五月网 | 99精品久久| 色婷婷久久| 另类视频丁香五月| 色婷婷4| 97干视频| 国产成人在线不卡AV| www.91五月| 欧美日本韩国亚洲| 天天干天天爽| 99精品热| 精品成人无码A片观看香草视频| 综合色播| 色爱综合网| 丁香五月91| 第四色五月婷婷| 久久精品视频在这里有| 亚洲国产va| 逼里香不卡| 五月天婷婷丁香社区| 伦99热| 国产精品色色色色| 五月婷婷激情色情网| 色五月婷婷丁香国产在线| 色五月婷婷少妇人妻| 思思热天天看| 天天搞夜夜爽夜夜爽| 色婷婷基地在线| 五月天狠狠网站| 婷婷丁香在线| www.射伊蕉婷婷| 欧洲亚洲免费视频9| 精品久久9| av色婷婷| 热久久77777| 丁香六月亚洲| 99热九九在线| 狠狠五月天| 丁香婷婷性久久| 干一干xxxx| 日韩九九| 噼里啪啦完整版中文在线观看| 欧美电影在线播放| 麻豆123区| 啪啪夜久久| WWW色色色COm| 色综合爱综合| 天天天天天天噜| 激情五月天在线免费美女视频| 激情五月天视频| 99爱爱| 成人片黄网站色大片免费毛片| 久久伊人大香蕉| 色99久草在线| 天天色色天天| 色五月激情网| 120分钟婬片免费看| 久久婷婷九月国产精品| 婷婷第一页| 久热婷婷| 人妻肉射免费观看| 色色色热热热| 极品少妇高潮啪啪AV无码| 婷婷99视频在线| 99免费在线视频| 亚洲婷婷丁香五月在线| 99热这里只有免费| 成人AV免费观看| 五月婷婷香蕉| 色婷婷综合久久久久| 五月丁香婷婷久久| 久热黄色| 成人超碰网| 六月婷婷九月丁香| 婷婷综合五月色播| 色婷婷操逼| 国产AV一区二区三区最新精品| 日本九九网| 久久99热这里只有精品23| 婷婷深爱五月丁香| 桃色成人网| 婷婷月综合| 99aese| 青青草激情网| 五月丁香亭亭AV女优| wuyuedingxiang99| 秋霞成人毛片一级A片| 人与禽A片啪啪| 外国碰视频网站97| 热99在线| 午夜69成人做爰视频| 伊人九热| 99re这里只有精品视频6| 日本婷婷五月天| 免费碰碰视频久| 国产精品久久99| AVDV久久| 国产三级在线播放| 六月丁香深深爱| 色婷视频| 思思99久久| 丁香婷婷五月基地| 国产人妻人伦精品一区二区| 婷婷伊人綜合中文字幕小说| 99热精品免费| a免费在线| 六月婷婷网站| 婷婷五月花| 久操激情| 成人网址在线观看| 九九视频在线观看视频在线播放69| 激情伍月 欧美| 色吧五月| 日本三级日本三级三级人妇四虎| 色五月大| 久久sp免费视频| 热这里| 久久大香蕉丁香| 丁香五月婷婷丫| 九九色婷婷| 九九热色视频| 激情五月丁香五月| 人人操AV| 五月天另类视频| 久久人人超| 69久久99精品久久久久婷婷| 五月天三级久久| 丁香五月六月综合欧美| 日韩人妻白浆视频系列| 久久婷婷五月草视频| 少妇人妻人伦A片| 少妇高潮呻吟A片免费看软件| 99热9999| 99日本黄站| 久久丝丝热| 婷婷六月色| 99九九久久| 91日本在线观看| 操操操www.com| 91热爆在线| 激情综合色| 色五月婷婷综合| 丁香五月瑟瑟| 亚洲第一成人无码A片| 伊人国产婷婷五月天| 伊人久久丁香五月91| 国语精品探花| 久久久久五月丁香| 婷婷射丁香| 99色婷婷视频| 免费观看18视频网站| 99精品久久久久久久婷婷久久| 五月天色小说| 亚洲综合99| 精品牛仔裤超碰| 九九热只有精品| 久久99热 这里有精品| 中文字幕不卡网站| 六月婷婷五月丁香| 五月丁香激情片| www.9操| 成人va视频| 色九区| 五月香婷婷| 日日综合网| 亚洲AV中文在线| 婷婷五月天网| 亚洲色情在线| 色五月色五天色情网| 欧美性生交XXXXX无码小说| 五月婷在线视频免费播放| 激情丁香五月| www.99在线| 丁香五月激情鲁| 涩五月丝袜婷婷| AV在线中文| 丁香六月激情综合网| 激情骚五月| 色综合久久888| 婷婷六月天精品| 亚洲综合另类| 国产真人做爰视频免费| 思思久久99| 日日噜人人人做人| 日本偷拍九九九| 五月天婷婷影院| 操人妻视频91| 九9九9无码| 91色色五月天| 97性视频| 免费视频这里只有精品| 99久久久免费| 婷婷五月天渟渟| 九九热超碰| 亚洲色热| 国产精品蜜臀99| 色欲丁香| 婷婷狠狠爱| 久草热8精品视频在线观看| 99热在线看片| 婷婷丁香在线播放| 狠狠狠婷婷五月综合| 超碰色天堂| 久久精品熟女亚洲AV麻豆| 丁香婷婷久久 | 五月亭亭开心网| 超碰av在线| 潘金莲AAAAAAAAAA| www狠狠| 午夜成人天堂久久无码日韩久久| 国产熟女日日骚五月丁香爱| 99re热在线视频| 丁香五月天天| 婷婷丁香91综合| 97在线视频观看| 色私五月婷婷| 中文字幕网伦射乱中文| 国产激情AV| 色婷婷综合视频| 婷婷激情丁五月| 秋霞电影一级黄| 精品九九久久| 久久受www免费人成| 欧美性爱五月天| 婷香五月激情视频| 久久婷婷五月丁香网| 丁香五月婷婷成人网| 中文无码精品一区二区三区| 午夜日韩久久久网站| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 色青青视频| 色婷婷婷av| 99视频超级精品| 婷婷色丁香五月| 伊人9在线| 玖玖在线| 伊人狠狠色婷婷综合丁香一区| 亚州激情九月| 日韩久操婷婷| 一区操| www一起操在线观看| 六月色 亚洲| 在线综合91| 黄色aa观看aaguochan| 丁香五月伊人| 果冻传媒A片一二三区| AV中文网| 激情婷婷黄色五月 | 五月婷婷|欧美| 色一情一乱一乱一区9| 超碰99热精品| 国产视频福利| 婷婷情色五月天| 九月丁香婷婷| 99热免费网站| 六月婷婷色宗合| 狠狠色精品综合| 五月天综合在线观看| 天天干天干| 综合久久99| 色玖玖综合网| 99这里都是精品6| www.色婷婷| 丁香婷婷综合激情五月色| 久久综合爱| 国产精品色色| 色色欧美色色色| 色99视| 国产av影片| 亭亭丁香久久五月| 中文不卡一二三区| 六月丁香好婷婷| 狠狠色丁香婷婷久久综合| 狼友视频在线观看18| 五月婷婷激情综合| 激情婷婷五月丁香啪啪啪| 超爽内射| 婷婷丁香激情综合色情| 激情网站五月| 丁香网五月天激情| 久久性爱视频| 丁香九月婷婷| 色激情网| 99久久久久| 五月花免费视频| 亚洲成人在线播放| 国产黄色在线观看| 4438国产免费看| 九九这里只这里只有精品| 色婷婷五月亚洲| AV在线免费播放| 噼里啪啦在线观看免费完整版视频| 婷婷五月激情黄色| 激情五月丁香社区| 婷婷免费成人视频| 久久综合五月天| 婷婷丁香六月天| 97香蕉人人在线观看| 天天五月丁香五月| renre人人操国产超碰在线| 玖玖资源站中文| 99热这里只有精品3| 99热九九九九| 久热99| 激情综合网五月天| 99久久9| 婷婷五月丁香花综合| 婷婷丁香五月天在线视频| 99男人的天堂| 亚洲中文字幕在线观看| 97成人在线视频精品| 色播五月丁香婷婷| 久久伦乱| 久在线综合69| 做爱夜夜干天天操| 夜夜大香蕉婷婷丁香| 激情内射人妻1区2区3区| 99热播放| 99热亚洲精品66| 五月婷婷亚洲色视频| 97日韩无套内| AV堂狠狠干| 99热天堂| 91呦呦呦| 激情综合网,婷婷五月天| 99九无网码| 免费成人中文字幕| 婷婷六月激情啪啪| 九九色影院| 久久久jd| 五月婷婷狠狠干| 99热只有| 26.uuu丁香五月婷婷| 99热这里只有精品86| 国产精自产拍久久久久久蜜| 色一区高清| 亚洲啪啪网| 久久婷综合网| 天天干天天爽天天操| 日本精品人妻无码77777| 丁香五月激情啪啪| 91狠狠综合久久| 99偷拍视频在线日本| 五月婷色丁香| 免费黄色片子| 色爱综合网| 国产免费一区二区三州老师F1F1| 97超碰9久热婷婷热| 色婷婷六月精品| 五月婷婷性爱| 婷婷趴趴| 伊人五月天在线| 亚洲精品字幕| 怡红院院久久| 色135综合网| 午夜精品777| 国产69久久久欧美黑人A片| 亚洲视频色色| 婷婷久热| 都市激情五月婷婷综合| 爱射综合| 激情六月五月婷婷综合网| 亚洲欧美成人在线| 五月婷婷六月爱| 国产毛片精品一区二区色欲黄A片| 这里只有视频精品| www.狠狠| 伊人在线婷婷草| 国产毛片精品一区二区色欲黄A片| 国产美女无遮挡裸体毛片A片| 操操碰| www.色五月| 久一这里有精品国产| 国产一区二区三区影院| 午夜色色色极品视频| BBWCUCKOLD精品熟妇| 丁香五月成人论坛| 99热这里只有精品99| 婷婷另类开心| www久久久久久久久久久| 久久机热思思热| 国产操逼视频网站| 九九色播五月丁香| 91无码视频| 99在线精品观看99| 色月视频| 97sese婷婷| 久久精彩视频| 五月丁香爱婷婷深深| 第九色区av天堂| 丁香九月婷婷色| 日本 色综合| 综合色播| 在线五月色播| 噜噜五月天综合| 99精品热| 激情涩涩网| 欧美怡红院黄站| 开心激情婷婷| 任你艹| 婷婷丁香六月天| 婷婷久久色| 久久99热这里只有精品首| 亚洲乱码精品久久久久.. | 思思9久久| 天天日日夜夜| 人妻久久久久| Caoub青青超碰 | 日韩AV片| 久久机热这里只有 | 九九热在线观看6| 一级黄在线| www.日日日.com| 玖玖婷婷色| 97中文在线| 九九热精品视频九九| 人操人人| 天天爽天天操| 天天噜噜| 99久热在线精品| 九九精品碰| 婷婷五月激情小说| 婷婷五月天开心网| 日韩九九视频| 婷婷五月丁香色播| 五月丁香影院| 久久久久久久人妻| 开心丁五月| 丁香婷婷色| 亚洲精品又粗又大又爽A片 | 涩综合网| 五月天久久www| 五月丁香婷婷爱激情综合网| 欧美色必爱| 丁香色婷婷| 激情小说婷婷| www开心激情网| 亚洲五月婷| 熟美女麻豆| 激情久久久| 欧洲亚洲免费视频9| 激情合网婷婷| 日韩操逼大片| 人人干人人操外国| 国产欧美熟妇另类久久久| 色婷婷综合久久久久| 日操夜撸| 亚州视频九九99| 丁香激情网| 五月婷婷七月丁香| 久久中文网| 开心五月婷婷| 超碰九九热| 停停五月色宗合| 99精品爱| 久久视频婷婷视频| 久久婷婷五月国产色综合激情| 97操碰碰无码视频| 9色小视频在线观看| 日韩综合成人| 综合婷婷| 国产精品成人在线| 欧美三级欧美一级| 69久久99精品久久久久婷婷| 亚洲经典小视频| 丁香五月综合在线播放 | 99热这里只有精品50| 肏屄色播伊人97婷婷| 婷婷欧美激情| 国内久久亭亭| 色色色色色日韩午夜激情 | 91人妻色色网| 蜜乳人妻一区二区三区| 色婷婷五月天无码视频| 先锋影音av色五月天资源站| 日韩中文字幕| 久久五月丁香| 色色无码| 91人人操人人爱| 91视频一起草| 337p大胆噜噜噜噜噜91Av| 97超碰在线免费观看| 日本久久精品18| 99热这里有精品| 色色99| 婷婷五月天视频亚洲| 激情五月天婷婷五月天| 丁香5月综合啪啪| 丁香五月日本| 人妻精品久久久久久久| www开心激情网| 婷婷五月在线播放| 五月丁香亚洲婷婷| 一本色道久久综合狠狠躁小说| 丁香五月天在线观看| 免费看欧美成人A片无码| 熟女网站久久| 99re免费精品视频| 丁香五月欧美| 婷婷五月天伊人| 大香蕉综合视频在线| 99精品视频免费观看近期发布| 婷婷五月激情综合网| 《亚洲操B久久免费在线观看,亚洲操B久久在线播放》在线播放 - 高清资源 - 97 | 九九九九九九九九九九九九九九九九九九九在线视频 | 思思久久99热| 久久色区| 99热福利| 午夜 外网 精品 在线| 婷婷五月色网| 女人天堂久久| 超碰人人艹| 狠狠综合网| 99热最新网址| 人妻无码视频网| 久久日九九| 激情丁香九九五月综合网| 婷婷激情丁香五月婷婷激情丁香五月婷婷 | 亚洲区视频| 狼人狠狠操| 狠狠丁香| 久久 这里只有精品1| 可以直接看的av| 97人人搞| 大战熟女丰满人妻AV| 综合五月激情| 欧美色99| 五月天色婷婷av| 亚洲无码色| 99只有精品| 五月丁香六月停停停| 91干| 高清无码 一区 二区 三区| 五月天开心激情综合网| 夜夜干 夜夜操| 丁香五月天堂网| 五月天大香蕉婷| 99色热视频| 5月丁香六月情| 日日夜夜天天| 国精产品一区一区三区免费视频| 激情五月婷婷啪啪| 日韩色色小视频| 丁香五月人妻| 人人摸人人干| www.久9| 99热啪啪| 久久久久久综合五月婷婷| 亚洲视频二区| 国产精品91抖高| 九九伊人网| 欧美va亚洲va在线播放| 色婷婷88| 五月丁香六月综合图| 九九九九毛片| 欧美色婷婷| 欧美五月停| 99精品久久久久久久婷婷| 久久小片| 久久九九综合| 91色噜噜狠狠狠狠色综合| 久热这里只有精品视频免费观看| 五月激情啪啪| 免费观看日韩成人av| 天天做天天干天天综合网| 97热视频| 色级婷婷| 国产热精品| 天天摸天天透天天舔| W色综合| 色9色| 欧美色色色色色| 97日本在线| 99r这里| 极品人妻VIDEOSSS人妻| 久久九九网| 九九热视频这里只有精品| 色色9 9| 欧美噜一噜| 日韩AAAAA| 婷婷五月天黄色| 婷婷丁香五月高清| 91久久久久久久久久18| 天天搞夜夜叫| 99在线视频精品| 3p久久| 五月天桃色深爱网| 色综合99无码| 欧美综合五月丁香六月婷| 免费视频在线观看的网站| 婷婷性爱| 丁香色婷婷五月天| 欧美日韩国产一区| 99在线免费视频| 亚洲精品中文字幕成人片| 婷婷激情五月综合丁香社| 午夜精品久久久久久久爽| 9精品视频在线观看| 这里只有精品免费视频| 人人操大| 色色综合网络| 五月伊人婷婷999| 九九热视频这里只有精品| 丁香激情五月天|