日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Echarts富文本rich及格式化工具formatter的使用

發布時間:2024/7/5 编程问答 73 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Echarts富文本rich及格式化工具formatter的使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

??????? Echarts官網上說,ECharts,一個使用 JavaScript 實現的開源可視化庫,可以流暢的運行在 PC 和移動設備上,兼容當前絕大部分瀏覽器(IE8/9/10/11,Chrome,Firefox,Safari等),底層依賴輕量級的矢量圖形庫 ZRender,提供直觀,交互豐富,可高度個性化定制的數據可視化圖表。

??????? ECharts 提供了常規的折線圖、柱狀圖散點圖、餅圖K線圖,用于統計的盒形圖,用于地理數據可視化的地圖、熱力圖、線圖,用于關系數據可視化的關系圖、treemap、旭日圖,多維數據可視化的平行坐標,還有用于 BI 的漏斗圖儀表盤,并且支持圖與圖之間的混搭。

??????? 除了已經內置的包含了豐富功能的圖表,ECharts 還提供了自定義系列,只需要傳入一個renderItem函數,就可以從數據映射到任何你想要的圖形,更棒的是這些都還能和已有的交互組件結合使用而不需要操心其它事情。

??????? Echarts官網上提供的實例幾乎滿足實際開發需求,有時未免有些特殊的需求,還好Echarts官網上提供豐富的開發文檔。通過仔細閱讀文檔終究會想到解決方法。

??????? 今天主要總結一下關于Echarts可視化組件開發中的富文本,官方文檔對富文本的解釋如下: 

????????????? 原先 echarts 中的文本標簽,只能對整塊統一進行樣式設置,并且僅僅支持顏色和字體的設置,從而導致不易于制作表達能力更強的文字描述信息。

????????????? echarts v3.7 以后,支持了富文本標簽,能夠:

  • 定制文本塊整體的樣式(如背景、邊框、陰影等)、位置、旋轉等。
  • 對文本塊中個別片段定義樣式(如顏色、字體、高寬、背景、陰影等)、對齊方式等。
  • 在文本中使用圖片做小圖標或者背景。
  • 特定組合以上的規則,可以做出簡單表格、分割線等效果。

開始下面的介紹之前,先說明一下下面會使用的兩個名詞的含義:

  • 文本塊(Text Block):文本標簽塊整體。
  • 文本片段(Text Fregment):文本標簽塊中的部分文本。

?

?

文本樣式相關的配置項

echarts 提供了豐富的文本標簽配置項,包括:

  • 字體基本樣式設置:fontStyle、fontWeight、fontSize、fontFamily。
  • 文字顏色:color。
  • 文字描邊:textBorderColor、textBorderWidth。
  • 文字陰影:textShadowColor、textShadowBlur、textShadowOffsetX、textShadowOffsetY。
  • 文本塊或文本片段大小:lineHeight、width、height、padding。
  • 文本塊或文本片段的對齊:align、verticalAlign。
  • 文本塊或文本片段的邊框、背景(顏色或圖片):backgroundColor、borderColor、borderWidth、borderRadius。
  • 文本塊或文本片段的陰影:shadowColor、shadowBlur、shadowOffsetX、shadowOffsetY。
  • 文本塊的位置和旋轉:position、distance、rotate。

可以在各處的 rich 屬性中定義文本片段樣式。例如 series-bar.label.rich

例如:

label: { // 在文本中,可以對部分文本采用 rich 中定義樣式。 // 這里需要在文本中使用標記符號: // `{styleName|text content text content}` 標記樣式名。 // 注意,換行仍是使用 '\n'。 formatter: [ '{a|這段文本采用樣式a}', '{b|這段文本采用樣式b}這段用默認樣式{x|這段用樣式x}' ].join('\n'), // 這里是文本塊的樣式設置: color: '#333', fontSize: 5, fontFamily: 'Arial', borderWidth: 3, backgroundColor: '#984455', padding: [3, 10, 10, 5], lineHeight: 20, // rich 里是文本片段的樣式設置: rich: { a: { color: 'red', lineHeight: 10 }, b: { backgroundColor: { image: 'xxx/xxx.jpg' }, height: 40 }, x: { fontSize: 18, fontFamily: 'Microsoft YaHei', borderColor: '#449933', borderRadius: 4 }, ... } }

注意:如果不定義 rich,不能指定文字塊的 width 和 height。

?


?

文本、文本框、文本片段的基本樣式和裝飾

每個文本可以設置基本的字體樣式:fontStyle、fontWeight、fontSize、fontFamily。

可以設置文字的顏色 color 和邊框的顏色 textBorderColor、textBorderWidth。

文本框可以設置邊框和背景的樣式:borderColor、borderWidth、backgroundColor、padding。

文本片段也可以設置邊框和背景的樣式:borderColor、borderWidth、backgroundColor、padding。

例如:

標簽的位置

對于折線圖、柱狀圖、散點圖等,均可以使用 label 來設置標簽。標簽的相對于圖形元素的位置,一般使用 label.position、label.distance 來配置。

例如:

注意:position 在不同的圖中可取值有所不同。distance 并不是在每個圖中都支持。詳情請參見 option 文檔

?


?

標簽的旋轉

某些圖中,為了能有足夠長的空間來顯示標簽,需要對標簽進行旋轉。例如:

這種場景下,可以結合 alignverticalAlign 來調整標簽位置。

注意,邏輯是,先使用 align 和 verticalAlign 定位,再旋轉。

?


?

文本片段的排版和對齊

關于排版方式,每個文本片段,可以想象成 CSS 中的 inline-block,在文檔流中按行放置。

每個文本片段的內容盒尺寸(content box size),默認是根據文字大小決定的。但是,也可以設置 width、height 來強制指定,雖然一般不會這么做(參見下文)。文本片段的邊框盒尺寸(border box size),由上述本身尺寸,加上文本片段的 padding 來得到。

只有 '\n' 是換行符,能導致換行。

一行內,會有多個文本片段。每行的實際高度,由 lineHeight 最大的文本片段決定。文本片段的 lineHeight 可直接在 rich 中指定,也可以在 rich 的父層級中統一指定而采用到 rich 的所有項中,如果都不指定,則取文本片段的邊框盒尺寸(border box size)。

在一行的 lineHeight 被決定后,一行內,文本片段的豎直位置,由文本片段的 verticalAlign 來指定(這里和 CSS 中的規則稍有不同):

  • 'bottom':文本片段的盒的底邊貼住行底。
  • 'top':文本片段的盒的頂邊貼住行頂。
  • 'middle':居行中。

文本塊的寬度,可以直接由文本塊的 width 指定,否則,由最長的行決定。寬度決定后,在一行中進行文本片段的放置。文本片段的 align 決定了文本片段在行中的水平位置:

  • 首先,從左向右連續緊靠放置 align 為 'left' 的文本片段盒。
  • 然后,從右向左連續緊靠放置 align 為 'right' 的文本片段盒。
  • 最后,剩余的沒處理的文本片段盒,緊貼著,在中間剩余的區域中居中放置。

關于文字在文本片段盒中的位置:

  • 如果 align 為 'center',則文字在文本片段盒中是居中的。
  • 如果 align 為 'left',則文字在文本片段盒中是居左的。
  • 如果 align 為 'right',則文字在文本片段盒中是居右的。

例如:

?

特殊效果:圖標、分割線、標題塊、簡單表格

看下面的例子:

文本片段的 backgroundColor 可以指定為圖片后,就可以在文本中使用圖標了:

rich: { Sunny: { // 這樣設定 backgroundColor 就可以是圖片了。 backgroundColor: { image: './data/asset/img/weather/sunny_128.png' }, // 可以只指定圖片的高度,從而圖片的寬度根據圖片的長寬比自動得到。 height: 30 } }

分割線實際是用 border 實現的:

rich: { hr: { borderColor: '#777', // 這里把 width 設置為 '100%',表示分割線的長度充滿文本塊。 // 注意,這里是文本塊內容盒(content box)的 100%,而不包含 padding。 // 雖然這和 CSS 相關的定義有所不同,但是在這類場景中更加方便。 width: '100%', borderWidth: 0.5, height: 0 } }

標題塊是使用 backgroundColor 實現的:

// 標題文字居左 formatter: '{titleBg|Left Title}', rich: { titleBg: { backgroundColor: '#000', height: 30, borderRadius: [5, 5, 0, 0], padding: [0, 10, 0, 10], width: '100%', color: '#eee' } } // 標題文字居中。 // 這個實現有些 tricky,但是,能夠不引入更復雜的排版規則而實現這個效果。 formatter: '{tc|Center Title}{titleBg|}', rich: { titleBg: { align: 'right', backgroundColor: '#000', height: 30, borderRadius: [5, 5, 0, 0], padding: [0, 10, 0, 10], width: '100%', color: '#eee' } }

下面直接貼上實例代碼和GitHub連接
Demo1 對echarts的title使用富文本,對其格式化
01(這個title是固定的)
效果圖:

<!DOCTYPE html> <html>
<head> <meta charset="utf-8"> <title>ECharts</title> <!-- 引入 echarts.js --> <script src="https://cdnjs.cloudflare.com/ajax/libs/echarts/4.1.0/echarts-en.common.js"></script> </head>
<bod> <!-- 為ECharts準備一個具備大小(寬高)的Dom --> <div id="main" style="width: 900px;height:600px;"></div> <script type="text/javascript"> // 基于準備好的dom,初始化echarts實例 var myChart = echarts.init(document.getElementById('main'));
// 指定圖表的配置項和數據 var data = [2220, 1682, 2791, 3000, 4090, 3230, 2910]; var xdata = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']; var option = { color: ['#3398DB'], tooltip: { trigger: 'axis', }, grid: { top: '10%', containLabel: true }, title: { /* text: 'subtextStyle.rich使用', */ subtext: '{a|名稱:}{b|供水統計}', left: 'center', textStyle: { fontSize: 20 }, subtextStyle: { rich: { a: { //開頭和結尾的文字樣式 color: 'gray', fontSize: 18 }, b: { /* backgroundColor: 'pink', */ //無法設置漸變色 color: 'green', padding: [3, 8], fontSize: 16, fontWeight: 600, /* borderColor: '#0b4d9d', borderWidth: 1, */ } } } }, xAxis: [{ type: 'category', data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'], axisTick: { alignWithLabel: true } }], yAxis: [{ type: 'value' }], series: [{ name: '直接訪問', type: 'bar', barWidth: '60%', data: [10, 52, 200, 334, 390, 330, 220] }] }; // 使用剛指定的配置項和數據顯示圖表。 myChart.setOption(option); </script> </body>
</html> 01(這個title是動態的) 效果圖: <!DOCTYPE html> <html>
<head> <meta charset="utf-8"> <title>ECharts</title> <!-- 引入 echarts.js --> <script src="https://cdnjs.cloudflare.com/ajax/libs/echarts/4.1.0/echarts-en.common.js"></script> </head>
<bod> <!-- 為ECharts準備一個具備大小(寬高)的Dom --> <div id="main" style="width: 900px;height:600px;"></div> <script type="text/javascript"> // 基于準備好的dom,初始化echarts實例 var myChart = echarts.init(document.getElementById('main')); var timename = "時間" var time = "18:08:08" // 指定圖表的配置項和數據 var data = [2220, 1682, 2791, 3000, 4090, 3230, 2910]; var xdata = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']; var option = { color: ['#3398DB'], tooltip: { trigger: 'axis', }, grid: { top: '10%', containLabel: true }, title: { subtext: "{" + "a" + "|" + timename + "}" + "{" + "b" + "|" + time + "}", left: 'center', textStyle: { fontSize: 20 }, subtextStyle: { rich: { a: { //開頭和結尾的文字樣式 color: 'gray', fontSize: 18 }, b: { color: 'green', padding: [3, 8], fontSize: 16, fontWeight: 600, } } } }, xAxis: [{ type: 'category', data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'], axisTick: { alignWithLabel: true } }], yAxis: [{ type: 'value' }], series: [{ name: '直接訪問', type: 'bar', barWidth: '60%', data: [10, 52, 200, 334, 390, 330, 220] }] }; // 使用剛指定的配置項和數據顯示圖表。 myChart.setOption(option); </script> </body>
</html> demo2 在vue使用echarts,修改 tooltip 效果圖:

代碼《01》

<template> <div> <div id="main4"></div> </div> </template> <script> export default { name: "Echarts2", data() { return { Datatime14: [], DataWaterRealUnitConsumptionnum14: [], DataWaterForcastUnitConsumptionnum14: [], Datamarkred14: [], DataMaxDatanum14: [], Datanum14: [], Datamarkred14top: [], bjstimer4: null }; }, mounted() { let that = this; that.request(); },
methods: { request() { var _this = this; var msg= {"BCtWaterUnitConsumption":369.6461,"CtWaterUnitConsumption":0,"MaxData":776.25690484946767,"WaterForcastUnitConsumption":[{"Data":362.9547,"Time":"00:00:00","Type":0},{"Data":360.6984,"Time":"00:15:00","Type":0},{"Data":363.2329,"Time":"00:30:00","Type":0},{"Data":363.1301,"Time":"00:45:00","Type":0},{"Data":359.9166,"Time":"01:00:00","Type":0},{"Data":363.332,"Time":"01:15:00","Type":0},{"Data":362.3297,"Time":"01:30:00","Type":0},{"Data":360.9614,"Time":"01:45:00","Type":0},{"Data":359.6568,"Time":"02:00:00","Type":0},{"Data":359.0653,"Time":"02:15:00","Type":0},{"Data":357.4453,"Time":"02:30:00","Type":0},{"Data":355.9816,"Time":"02:45:00","Type":0},{"Data":354.3747,"Time":"03:00:00","Type":0},{"Data":352.9428,"Time":"03:15:00","Type":0},{"Data":351.5586,"Time":"03:30:00","Type":0},{"Data":349.9676,"Time":"03:45:00","Type":0},{"Data":349.3789,"Time":"04:00:00","Type":0},{"Data":347.9629,"Time":"04:15:00","Type":0},{"Data":346.4833,"Time":"04:30:00","Type":0},{"Data":345.2582,"Time":"04:45:00","Type":0},{"Data":343.9858,"Time":"05:00:00","Type":0},{"Data":342.6171,"Time":"05:15:00","Type":0},{"Data":341.2137,"Time":"05:30:00","Type":0},{"Data":339.7374,"Time":"05:45:00","Type":0},{"Data":338.1941,"Time":"06:00:00","Type":0},{"Data":336.6827,"Time":"06:15:00","Type":0},{"Data":331.4004,"Time":"06:30:00","Type":0},{"Data":328.4645,"Time":"06:45:00","Type":0},{"Data":330.2028,"Time":"07:00:00","Type":0},{"Data":325.8771,"Time":"07:15:00","Type":0},{"Data":328.5522,"Time":"07:30:00","Type":0},{"Data":330.5124,"Time":"07:45:00","Type":0},{"Data":330.3464,"Time":"08:00:00","Type":0},{"Data":333.293,"Time":"08:15:00","Type":0},{"Data":332.2695,"Time":"08:30:00","Type":0},{"Data":335.3607,"Time":"08:45:00","Type":0},{"Data":335.2552,"Time":"09:00:00","Type":0},{"Data":335.2558,"Time":"09:15:00","Type":0},{"Data":336.6607,"Time":"09:30:00","Type":0},{"Data":336.4277,"Time":"09:45:00","Type":0},{"Data":337.7365,"Time":"10:00:00","Type":0},{"Data":337.4455,"Time":"10:15:00","Type":0},{"Data":339.2552,"Time":"10:30:00","Type":0},{"Data":339.0848,"Time":"10:45:00","Type":0},{"Data":339.8569,"Time":"11:00:00","Type":0},{"Data":339.9649,"Time":"11:15:00","Type":0},{"Data":340.0957,"Time":"11:30:00","Type":0},{"Data":340.738,"Time":"11:45:00","Type":0},{"Data":341.5738,"Time":"12:00:00","Type":0},{"Data":342.1352,"Time":"12:15:00","Type":0},{"Data":341.8438,"Time":"12:30:00","Type":0},{"Data":342.2098,"Time":"12:45:00","Type":0},{"Data":343.7514,"Time":"13:00:00","Type":0},{"Data":343.0101,"Time":"13:15:00","Type":0},{"Data":346.3281,"Time":"13:30:00","Type":0},{"Data":347.3826,"Time":"13:45:00","Type":0},{"Data":348.6347,"Time":"14:00:00","Type":0},{"Data":348.8486,"Time":"14:15:00","Type":0},{"Data":346.5973,"Time":"14:30:00","Type":0},{"Data":346.7559,"Time":"14:45:00","Type":0},{"Data":346.4899,"Time":"15:00:00","Type":0},{"Data":344.2002,"Time":"15:15:00","Type":0},{"Data":343.5149,"Time":"15:30:00","Type":0},{"Data":346.3243,"Time":"15:45:00","Type":0},{"Data":343.2917,"Time":"16:00:00","Type":0},{"Data":343.4204,"Time":"16:15:00","Type":0},{"Data":342.4683,"Time":"16:30:00","Type":0},{"Data":341.7943,"Time":"16:45:00","Type":0},{"Data":342.6641,"Time":"17:00:00","Type":0},{"Data":343.2705,"Time":"17:15:00","Type":0},{"Data":341.2998,"Time":"17:30:00","Type":0},{"Data":344.0632,"Time":"17:45:00","Type":0},{"Data":344.623,"Time":"18:00:00","Type":0},{"Data":344.8369,"Time":"18:15:00","Type":0},{"Data":346.6588,"Time":"18:30:00","Type":0},{"Data":346.2391,"Time":"18:45:00","Type":0},{"Data":346.1565,"Time":"19:00:00","Type":0},{"Data":346.1591,"Time":"19:15:00","Type":0},{"Data":346.9922,"Time":"19:30:00","Type":0},{"Data":348.2123,"Time":"19:45:00","Type":0},{"Data":349.4399,"Time":"20:00:00","Type":0},{"Data":350.8944,"Time":"20:15:00","Type":0},{"Data":351.2439,"Time":"20:30:00","Type":0},{"Data":352.8311,"Time":"20:45:00","Type":0},{"Data":353.284,"Time":"21:00:00","Type":0},{"Data":353.9928,"Time":"21:15:00","Type":0},{"Data":354.2663,"Time":"21:30:00","Type":0},{"Data":355.0968,"Time":"21:45:00","Type":0},{"Data":355.7013,"Time":"22:00:00","Type":0},{"Data":356.9886,"Time":"22:15:00","Type":0},{"Data":359.8441,"Time":"22:30:00","Type":0},{"Data":358.2381,"Time":"22:45:00","Type":0},{"Data":356.2934,"Time":"23:00:00","Type":0},{"Data":360.339,"Time":"23:15:00","Type":0},{"Data":361.7268,"Time":"23:30:00","Type":0},{"Data":361.6662,"Time":"23:45:00","Type":0}],"WaterRealUnitConsumption":[{"Data":369.65,"Time":"00:00:00","Type":0},{"Data":367.99,"Time":"00:15:00","Type":0},{"Data":366.52,"Time":"00:30:00","Type":0},{"Data":365.8,"Time":"00:45:00","Type":0},{"Data":365.58,"Time":"01:00:00","Type":0},{"Data":363.02,"Time":"01:15:00","Type":0},{"Data":359.55,"Time":"01:30:00","Type":0},{"Data":358.59,"Time":"01:45:00","Type":0},{"Data":357.36,"Time":"02:00:00","Type":0},{"Data":355.72,"Time":"02:15:00","Type":0},{"Data":353.18,"Time":"02:30:00","Type":0},{"Data":351.04,"Time":"02:45:00","Type":0},{"Data":350.64,"Time":"03:00:00","Type":0},{"Data":347.82,"Time":"03:15:00","Type":0},{"Data":344.98,"Time":"03:30:00","Type":0},{"Data":343.71,"Time":"03:45:00","Type":0},{"Data":342.97,"Time":"04:00:00","Type":0},{"Data":341.64,"Time":"04:15:00","Type":0},{"Data":340.12,"Time":"04:30:00","Type":0},{"Data":337.44,"Time":"04:45:00","Type":0},{"Data":335.96,"Time":"05:00:00","Type":0},{"Data":333.18,"Time":"05:15:00","Type":0},{"Data":331.69,"Time":"05:30:00","Type":0},{"Data":328.68,"Time":"05:45:00","Type":0},{"Data":324.76,"Time":"06:00:00","Type":0},{"Data":322.81,"Time":"06:15:00","Type":0},{"Data":321.16,"Time":"06:30:00","Type":0},{"Data":321.61,"Time":"06:45:00","Type":0},{"Data":320.78,"Time":"07:00:00","Type":0},{"Data":319.95,"Time":"07:15:00","Type":0},{"Data":327.16,"Time":"07:30:00","Type":0},{"Data":325.33,"Time":"07:45:00","Type":0},{"Data":326.77,"Time":"08:00:00","Type":0},{"Data":329.21,"Time":"08:15:00","Type":0},{"Data":328.78,"Time":"08:30:00","Type":0},{"Data":333.78,"Time":"08:45:00","Type":0},{"Data":335.49,"Time":"09:00:00","Type":0},{"Data":0,"Time":"09:15:00","Type":0},{"Data":339.03,"Time":"09:30:00","Type":0},{"Data":341.42,"Time":"09:45:00","Type":0},{"Data":341.88,"Time":"10:00:00","Type":0},{"Data":343.24,"Time":"10:15:00","Type":0},{"Data":344.38,"Time":"10:30:00","Type":0},{"Data":347.14,"Time":"10:45:00","Type":0},{"Data":345.67,"Time":"11:00:00","Type":0},{"Data":346.5,"Time":"11:15:00","Type":0},{"Data":346.99,"Time":"11:30:00","Type":0},{"Data":347.4,"Time":"11:45:00","Type":0},{"Data":0,"Time":"12:00:00","Type":0},{"Data":346.14,"Time":"12:15:00","Type":0},{"Data":346.04,"Time":"12:30:00","Type":0},{"Data":345.05,"Time":"12:45:00","Type":0},{"Data":345.16,"Time":"13:00:00","Type":0},{"Data":344.13,"Time":"13:15:00","Type":0},{"Data":344.36,"Time":"13:30:00","Type":0},{"Data":345.04,"Time":"13:45:00","Type":0},{"Data":344.92,"Time":"14:00:00","Type":0},{"Data":344.03,"Time":"14:15:00","Type":0}]} var MaxData14 = msg.MaxData; //最大值 var WaterForcastUnitConsumption14 = msg.WaterForcastUnitConsumption; //預測曲線 var WaterRealUnitConsumption14 = msg.WaterRealUnitConsumption; //實際曲線 var time14 = []; var num14 = []; var markred14 = []; var markred14top=[] var MaxDatanum14 = []; //最大值 var WaterForcastUnitConsumptionnum14 = []; //預測曲線 var WaterRealUnitConsumptionnum14 = []; //實際曲線 for (var i = 0; i < WaterForcastUnitConsumption14.length; i++) { WaterForcastUnitConsumptionnum14.push(WaterForcastUnitConsumption14[i].Data); time14.push(WaterForcastUnitConsumption14[i].Time); MaxDatanum14.push(MaxData14); num14.push(MaxData14/30); } for (var i = 0; i < WaterRealUnitConsumption14.length; i++) { WaterRealUnitConsumptionnum14.push(WaterRealUnitConsumption14[i].Data); } for (var i = 0; i < WaterRealUnitConsumption14.length-1; i++) { markred14.push(0); markred14top.push(0); } markred14.push(WaterRealUnitConsumptionnum14[WaterRealUnitConsumptionnum14.length - 1]); markred14top.push(MaxData14/30); _this.Datatime14 = time14; _this.DataWaterRealUnitConsumptionnum14 = WaterRealUnitConsumptionnum14; _this.DataWaterForcastUnitConsumptionnum14 = WaterForcastUnitConsumptionnum14; _this.Datamarkred14 = markred14; _this.Datamarkred14top = markred14top; _this.Datanum14 = num14 _this.DataMaxDatanum14 = MaxDatanum14; _this.drawLine();
}, drawLine() { // 基于準備好的dom,初始化echarts實例 let myChart = this.$echarts.init(document.getElementById("main4")); // 繪制圖表 myChart.setOption({ grid: { height: 84, width: 760, bottom: 10, top: 35, right: 1, left: 51 }, color: ["#a9b2bf", "#0060ff", "#b53f9a"], legend: { right: 5, width: 500, itemWidth: 40, textStyle: { color: "#6e7b8b" }, data: ["歷史值", "預測值"], icon: "rect", //? 這個字段控制形狀? 類型包括 circle,rect ,roundRect,triangle,diamond,pin,arrow,none
itemWidth: 14, // 設置寬度
itemHeight: 14, // 設置高度
itemGap: 40 // 設置間距 }, tooltip: { trigger: "axis", padding: [0, 10], formatter: function(params) { /* console.log(params) */ var res = "<div> <p> 時間:" + params[0].name + " </p> </div>"; for (var i = 0; i < params.length; i++) { if (params[i].seriesName == "歷史值") { res += "<p>" + params[i].seriesName + ":" + params[i].data + "</p>"; } else if(params[i].seriesIndex == 3){ res += "<p>" + "預測值" + ":" + params[i].data + "</p>"; } /* res += "<p>" + params[i].seriesName + ":" + params[i].data + "</p>"; */ } return res; }, textStyle: { align: "left" } }, xAxis: [ { data: this.Datatime14, axisLabel: { inside: false, textStyle: { color: "#fff" } }, axisTick: { show: false }, axisLine: { show: false }, z: 10 } ], yAxis: { splitLine: { show: false, lineStyle: { color: "#dfdfdf", width: 1, type: "dashed" } }, axisLine: { show: false }, axisTick: { show: false }, axisLabel: { textStyle: { color: "#999" } } }, series: [ { name: "歷史值", type: "bar", barWidth: 6, data: this.DataWaterRealUnitConsumptionnum14, zlevel: 99, itemStyle: { normal: { color: "#a9b2bf" } } }, { type: "bar", stack: '標記', barWidth: 6, data:this.Datamarkred14, zlevel: 199, itemStyle: { normal: { color: "red", }, }, tooltip:{ show:false } }, { type: "bar", stack: '標記', barWidth: 6, data:this.Datamarkred14top, zlevel: 199, itemStyle: { normal: { color: "red", }, }, tooltip:{ show:false } },
{ type: "bar", stack: "總量", barWidth: 6, itemStyle: { normal: { color: "rgba(229,235,236,0)" } }, zlevel: 1333, // Make series be overlap /* barGap: '-100%', */ data: this.DataWaterForcastUnitConsumptionnum14 }, { name: "預測值", type: "bar", barWidth: 6, stack: "總量", itemStyle: { normal: { color: "#0060ff" } }, zlevel: 1333, data: this.Datanum14 }, { type: "bar", barWidth: 6, itemStyle: { normal: { color: "#e5ebec" } }, barGap: "-100%", data: this.DataMaxDatanum14 } ] }); } }, beforeDestroy() { clearInterval(this.bjstimer4); this.bjstimer4 = null; } }; </script> <style scoped> #main4 { width: 820px; height: 134px; margin-left: 20px;
/* border: 1px red solid; */ } </style> 代碼《02》

<template> <div> <div id="main5"></div> </div> </template> <script> export default { name: "Echarts2", data() { return { Datatime15: [], DataWaterRealTotalEfficiencynum15: [], DataWaterForcastTotalEfficiencynum15: [], Datamarkred15: [], DataMaxDatanum15: [], Datanum15: [], Datamarkred15top: [], bjstimer5: null }; }, mounted() { let that = this; that.request(); },
methods: { request() { var _this = this; var msg = { CtWaterTotalEfficiency: 0, HighestTotalEfficiency: 73, LowestTotalEfficiency: 73, MaxData: 100, WaterForcastTotalEfficiency: [ { Data: 73, Time: "00:00:00", Type: 0 }, { Data: 73, Time: "00:15:00", Type: 0 }, { Data: 73, Time: "00:30:00", Type: 0 }, { Data: 73, Time: "00:45:00", Type: 0 }, { Data: 73, Time: "01:00:00", Type: 0 }, { Data: 73, Time: "01:15:00", Type: 0 }, { Data: 73, Time: "01:30:00", Type: 0 }, { Data: 73, Time: "01:45:00", Type: 0 }, { Data: 73, Time: "02:00:00", Type: 0 }, { Data: 73, Time: "02:15:00", Type: 0 }, { Data: 73, Time: "02:30:00", Type: 0 }, { Data: 73, Time: "02:45:00", Type: 0 }, { Data: 73, Time: "03:00:00", Type: 0 }, { Data: 73, Time: "03:15:00", Type: 0 }, { Data: 73, Time: "03:30:00", Type: 0 }, { Data: 73, Time: "03:45:00", Type: 0 }, { Data: 73, Time: "04:00:00", Type: 0 }, { Data: 73, Time: "04:15:00", Type: 0 }, { Data: 73, Time: "04:30:00", Type: 0 }, { Data: 73, Time: "04:45:00", Type: 0 }, { Data: 73, Time: "05:00:00", Type: 0 }, { Data: 73, Time: "05:15:00", Type: 0 }, { Data: 73, Time: "05:30:00", Type: 0 }, { Data: 73, Time: "05:45:00", Type: 0 }, { Data: 73, Time: "06:00:00", Type: 0 }, { Data: 73, Time: "06:15:00", Type: 0 }, { Data: 73, Time: "06:30:00", Type: 0 }, { Data: 73, Time: "06:45:00", Type: 0 }, { Data: 73, Time: "07:00:00", Type: 0 }, { Data: 73, Time: "07:15:00", Type: 0 }, { Data: 73, Time: "07:30:00", Type: 0 }, { Data: 73, Time: "07:45:00", Type: 0 }, { Data: 73, Time: "08:00:00", Type: 0 }, { Data: 73, Time: "08:15:00", Type: 0 }, { Data: 73, Time: "08:30:00", Type: 0 }, { Data: 73, Time: "08:45:00", Type: 0 }, { Data: 73, Time: "09:00:00", Type: 0 }, { Data: 73, Time: "09:15:00", Type: 0 }, { Data: 73, Time: "09:30:00", Type: 0 }, { Data: 73, Time: "09:45:00", Type: 0 }, { Data: 73, Time: "10:00:00", Type: 0 }, { Data: 73, Time: "10:15:00", Type: 0 }, { Data: 73, Time: "10:30:00", Type: 0 }, { Data: 73, Time: "10:45:00", Type: 0 }, { Data: 73, Time: "11:00:00", Type: 0 }, { Data: 73, Time: "11:15:00", Type: 0 }, { Data: 73, Time: "11:30:00", Type: 0 }, { Data: 73, Time: "11:45:00", Type: 0 }, { Data: 73, Time: "12:00:00", Type: 0 }, { Data: 73, Time: "12:15:00", Type: 0 }, { Data: 73, Time: "12:30:00", Type: 0 }, { Data: 73, Time: "12:45:00", Type: 0 }, { Data: 73, Time: "13:00:00", Type: 0 }, { Data: 73, Time: "13:15:00", Type: 0 }, { Data: 73, Time: "13:30:00", Type: 0 }, { Data: 73, Time: "13:45:00", Type: 0 }, { Data: 73, Time: "14:00:00", Type: 0 }, { Data: 73, Time: "14:15:00", Type: 0 }, { Data: 73, Time: "14:30:00", Type: 0 }, { Data: 73, Time: "14:45:00", Type: 0 }, { Data: 73, Time: "15:00:00", Type: 0 }, { Data: 73, Time: "15:15:00", Type: 0 }, { Data: 73, Time: "15:30:00", Type: 0 }, { Data: 73, Time: "15:45:00", Type: 0 }, { Data: 73, Time: "16:00:00", Type: 0 }, { Data: 73, Time: "16:15:00", Type: 0 }, { Data: 73, Time: "16:30:00", Type: 0 }, { Data: 73, Time: "16:45:00", Type: 0 }, { Data: 73, Time: "17:00:00", Type: 0 }, { Data: 73, Time: "17:15:00", Type: 0 }, { Data: 73, Time: "17:30:00", Type: 0 }, { Data: 73, Time: "17:45:00", Type: 0 }, { Data: 73, Time: "18:00:00", Type: 0 }, { Data: 73, Time: "18:15:00", Type: 0 }, { Data: 73, Time: "18:30:00", Type: 0 }, { Data: 73, Time: "18:45:00", Type: 0 }, { Data: 73, Time: "19:00:00", Type: 0 }, { Data: 73, Time: "19:15:00", Type: 0 }, { Data: 73, Time: "19:30:00", Type: 0 }, { Data: 73, Time: "19:45:00", Type: 0 }, { Data: 73, Time: "20:00:00", Type: 0 }, { Data: 73, Time: "20:15:00", Type: 0 }, { Data: 73, Time: "20:30:00", Type: 0 }, { Data: 73, Time: "20:45:00", Type: 0 }, { Data: 73, Time: "21:00:00", Type: 0 }, { Data: 73, Time: "21:15:00", Type: 0 }, { Data: 73, Time: "21:30:00", Type: 0 }, { Data: 73, Time: "21:45:00", Type: 0 }, { Data: 73, Time: "22:00:00", Type: 0 }, { Data: 73, Time: "22:15:00", Type: 0 }, { Data: 73, Time: "22:30:00", Type: 0 }, { Data: 73, Time: "22:45:00", Type: 0 }, { Data: 73, Time: "23:00:00", Type: 0 }, { Data: 73, Time: "23:15:00", Type: 0 }, { Data: 73, Time: "23:30:00", Type: 0 }, { Data: 73, Time: "23:45:00", Type: 0 } ], WaterRealTotalEfficiency: [ { Data: 73, Time: "00:00:00", Type: 0 }, { Data: 73, Time: "00:15:00", Type: 0 }, { Data: 73, Time: "00:30:00", Type: 0 }, { Data: 73, Time: "00:45:00", Type: 0 }, { Data: 73, Time: "01:00:00", Type: 0 }, { Data: 73, Time: "01:15:00", Type: 0 }, { Data: 73, Time: "01:30:00", Type: 0 }, { Data: 73, Time: "01:45:00", Type: 0 }, { Data: 73, Time: "02:00:00", Type: 0 }, { Data: 73, Time: "02:15:00", Type: 0 }, { Data: 73, Time: "02:30:00", Type: 0 }, { Data: 73, Time: "02:45:00", Type: 0 }, { Data: 73, Time: "03:00:00", Type: 0 }, { Data: 73, Time: "03:15:00", Type: 0 }, { Data: 73, Time: "03:30:00", Type: 0 }, { Data: 73, Time: "03:45:00", Type: 0 }, { Data: 73, Time: "04:00:00", Type: 0 }, { Data: 73, Time: "04:15:00", Type: 0 }, { Data: 73, Time: "04:30:00", Type: 0 }, { Data: 73, Time: "04:45:00", Type: 0 }, { Data: 73, Time: "05:00:00", Type: 0 }, { Data: 73, Time: "05:15:00", Type: 0 }, { Data: 73, Time: "05:30:00", Type: 0 }, { Data: 73, Time: "05:45:00", Type: 0 }, { Data: 73, Time: "06:00:00", Type: 0 }, { Data: 73, Time: "06:15:00", Type: 0 }, { Data: 73, Time: "06:30:00", Type: 0 }, { Data: 73, Time: "06:45:00", Type: 0 }, { Data: 73, Time: "07:00:00", Type: 0 }, { Data: 73, Time: "07:15:00", Type: 0 }, { Data: 73, Time: "07:30:00", Type: 0 }, { Data: 73, Time: "07:45:00", Type: 0 }, { Data: 73, Time: "08:00:00", Type: 0 }, { Data: 73, Time: "08:15:00", Type: 0 }, { Data: 73, Time: "08:30:00", Type: 0 }, { Data: 73, Time: "08:45:00", Type: 0 }, { Data: 73, Time: "09:00:00", Type: 0 }, { Data: 0, Time: "09:15:00", Type: 0 }, { Data: 73, Time: "09:30:00", Type: 0 }, { Data: 73, Time: "09:45:00", Type: 0 }, { Data: 73, Time: "10:00:00", Type: 0 }, { Data: 73, Time: "10:15:00", Type: 0 }, { Data: 73, Time: "10:30:00", Type: 0 }, { Data: 73, Time: "10:45:00", Type: 0 }, { Data: 73, Time: "11:00:00", Type: 0 }, { Data: 73, Time: "11:15:00", Type: 0 }, { Data: 73, Time: "11:30:00", Type: 0 }, { Data: 73, Time: "11:45:00", Type: 0 }, { Data: 0, Time: "12:00:00", Type: 0 }, { Data: 73, Time: "12:15:00", Type: 0 }, { Data: 73, Time: "12:30:00", Type: 0 }, { Data: 73, Time: "12:45:00", Type: 0 }, { Data: 73, Time: "13:00:00", Type: 0 }, { Data: 73, Time: "13:15:00", Type: 0 }, { Data: 73, Time: "13:30:00", Type: 0 }, { Data: 73, Time: "13:45:00", Type: 0 }, { Data: 73, Time: "14:00:00", Type: 0 }, { Data: 73, Time: "14:15:00", Type: 0 } ] }; var _this = this; var MaxData15 = msg.MaxData; var WaterForcastTotalEfficiency15 = msg.WaterForcastTotalEfficiency; var WaterRealTotalEfficiency15 = msg.WaterRealTotalEfficiency; var time15 = []; var num15 = []; var markred15 = []; var markred15top = []; var MaxDatanum15 = []; //最大值 var WaterForcastTotalEfficiencynum15 = []; //預測曲線 var WaterRealTotalEfficiencynum15 = []; //實際曲線 for (var i = 0; i < WaterForcastTotalEfficiency15.length; i++) { WaterForcastTotalEfficiencynum15.push( WaterForcastTotalEfficiency15[i].Data ); time15.push(WaterForcastTotalEfficiency15[i].Time); MaxDatanum15.push(MaxData15); num15.push(MaxData15 / 30); } for (var i = 0; i < WaterRealTotalEfficiency15.length; i++) { WaterRealTotalEfficiencynum15.push(WaterRealTotalEfficiency15[i].Data); } for (var i = 0; i < WaterRealTotalEfficiency15.length - 1; i++) { markred15.push(0); markred15top.push(0); } markred15.push( WaterRealTotalEfficiencynum15[WaterRealTotalEfficiencynum15.length - 1] ); markred15top.push(MaxData15 / 30); _this.Datatime15 = time15; _this.DataWaterRealTotalEfficiencynum15 = WaterRealTotalEfficiencynum15; _this.DataWaterForcastTotalEfficiencynum15 = WaterForcastTotalEfficiencynum15; _this.Datamarkred15 = markred15; _this.Datamarkred15top = markred15top; _this.Datanum15 = num15; _this.DataMaxDatanum15 = MaxDatanum15; _this.drawLine(); }, drawLine() { // 基于準備好的dom,初始化echarts實例 let myChart = this.$echarts.init(document.getElementById("main5")); // 繪制圖表 myChart.setOption({ grid: { height: 84, width: 760, bottom: 10, top: 35, right: 1, left: 51 }, color: ["#a9b2bf", "#0060ff", "#b53f9a"], legend: { right: 5, width: 500, itemWidth: 40, textStyle: { color: "#6e7b8b" }, data: ["歷史值", "預測值"], icon: "rect", //? 這個字段控制形狀? 類型包括 circle,rect ,roundRect,triangle,diamond,pin,arrow,none
itemWidth: 14, // 設置寬度
itemHeight: 14, // 設置高度
itemGap: 40 // 設置間距 }, tooltip: { trigger: "axis", padding: [0, 10], formatter: function(params) { /* console.log(params) */ var res = "<div> <p> 時間:" + params[0].name + " </p> </div>"; for (var i = 0; i < params.length; i++) { if (params[i].seriesName == "歷史值") { res += "<p>" + params[i].seriesName + ":" + params[i].data + "</p>"; } else if (params[i].seriesIndex == 3) { res += "<p>" + "預測值" + ":" + params[i].data + "</p>"; } /* res += "<p>" + params[i].seriesName + ":" + params[i].data + "</p>"; */ } return res; }, textStyle: { align: "left" } }, xAxis: [ { data: this.Datatime15, axisLabel: { inside: false, textStyle: { color: "#fff" } }, axisTick: { show: false }, axisLine: { show: false }, z: 10 } ], yAxis: { splitLine: { show: false, lineStyle: { color: "#dfdfdf", width: 1, type: "dashed" } }, axisLine: { show: false }, axisTick: { show: false }, axisLabel: { textStyle: { color: "#999" } } }, series: [ { name: "歷史值", type: "bar", barWidth: 6, data: this.DataWaterRealTotalEfficiencynum15, zlevel: 99, itemStyle: { normal: { color: "#a9b2bf" } } }, { type: "bar", stack: "標記", barWidth: 6, data: this.Datamarkred15, zlevel: 199, itemStyle: { normal: { color: "red" } }, tooltip: { show: false } }, { type: "bar", stack: "標記", barWidth: 6, data: this.Datamarkred15top, zlevel: 199, itemStyle: { normal: { color: "red" } }, tooltip: { show: false } },
{ type: "bar", stack: "總量", barWidth: 6, itemStyle: { normal: { color: "rgba(229,235,236,0)" } }, zlevel: 1333, // Make series be overlap /* barGap: '-100%', */ data: this .DataWaterForcastTotalEfficiencynum15 }, { name: "預測值", type: "bar", barWidth: 6, stack: "總量", itemStyle: { normal: { color: "#0060ff" } }, zlevel: 1333, data: this.Datanum15 }, { type: "bar", barWidth: 6, itemStyle: { normal: { color: "#e5ebec" } }, barGap: "-100%", data: this.DataMaxDatanum15 } ] }); } }, beforeDestroy() { clearInterval(this.bjstimer5); this.bjstimer5 = null; } }; </script> <style scoped> #main5 { width: 820px; height: 134px; margin-left: 20px;
/* border: 1px red solid; */ } </style> 今天先到這,有時間在續寫......


?

轉載于:https://www.cnblogs.com/volodya/p/Echarts.html

總結

以上是生活随笔為你收集整理的Echarts富文本rich及格式化工具formatter的使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

国产无限资源在线观看 | 久久久久国产精品午夜一区 | 久久伦理电影网 | 国产三级精品在线 | 在线播放视频一区 | 免费成人黄色片 | 亚洲自拍自偷 | 天天操天天操天天操天天操天天操天天操 | 国产在线观看你懂得 | 天天干婷婷 | 国产日韩欧美在线观看视频 | 久久久久久国产精品999 | 欧美日韩在线第一页 | 黄色在线免费观看网站 | 国产黄色观看 | 国产精品五月天 | 成人av.com | 久久天天躁夜夜躁狠狠躁2022 | 去看片 | 福利视频区 | 久草国产在线观看 | 国产精品一区二区在线免费观看 | 天天操天天操天天操天天操天天操 | 激情小说网站亚洲综合网 | 日日干夜夜骑 | 美女视频又黄又免费 | 9999亚洲| 久色伊人 | 欧美在线99 | 久久综合色影院 | 91香蕉视频 | 免费观看v片在线观看 | 91亚洲视频在线观看 | 青青色影院 | 久久午夜免费视频 | 成人一级视频在线观看 | 在线播放你懂 | 国产视频1 | 粉嫩av一区二区三区免费 | 国产又粗又猛又爽 | 天天伊人狠狠 | 又黄又爽又刺激视频 | 久久免费视频99 | 亚洲日韩中文字幕 | 国际精品久久 | 成年人视频在线观看免费 | 久久免费观看视频 | 99视频这里有精品 | 亚洲一级片在线看 | 日本中文一区二区 | 久久夜av | 日韩网站中文字幕 | 国产手机在线精品 | 欧美日韩1区 | 国产又粗又硬又爽的视频 | av在线h| www.黄色片网站 | 日本久久综合视频 | 日韩欧美xxx| 国产91小视频 | 在线之家免费在线观看电影 | 日韩va欧美va亚洲va久久 | 国产一区二区精品91 | 国产99在线免费 | 亚洲女同ⅹxx女同tv | 久久a免费视频 | 久久99精品一区二区三区三区 | 六月丁香综合 | 日日夜夜综合网 | 久久久久久久久久久久久久av | 久久久久久久av | 一区二区三区免费在线 | 亚洲91精品在线观看 | 六月丁香婷婷在线 | 久久免费av电影 | 日韩在线看片 | 五月婷婷视频在线 | 中文字幕视频三区 | 久久综合精品国产一区二区三区 | 国产999精品久久久久久绿帽 | 久久综合影院 | 婷婷电影在线观看 | 久久精品国产亚洲 | 九九欧美视频 | 麻豆国产露脸在线观看 | 蜜臀av性久久久久蜜臀aⅴ涩爱 | 午夜影院在线观看18 | 久久99国产精品久久99 | 欧美日韩精品区 | 免费看久久 | 久色 网 | 黄色aa久久| 亚洲春色奇米影视 | 亚洲国产中文在线观看 | 中文字幕观看av | 91香蕉视频黄 | 天天干天天干天天干天天干天天干天天干 | 国产成人99av超碰超爽 | 最近中文字幕 | 国产不卡视频在线播放 | 午夜精品电影 | 免费看的黄色 | 国产一区二区手机在线观看 | 国产香蕉97碰碰碰视频在线观看 | 国产无遮挡又黄又爽在线观看 | 中文字幕在线观看免费 | 人人爽人人爽人人爽人人爽 | 亚洲黄色av网址 | 男女视频久久久 | 美女视频黄频大全免费 | 精品九九九 | 又紧又大又爽精品一区二区 | 国产色影院 | 久久免费看片 | 777xxx欧美| 最新黄色av网址 | 精品高清视频 | 国产精品99久久久久人中文网介绍 | 亚洲天堂网视频在线观看 | 国产一区二区在线精品 | 大片网站久久 | 国产四虎影院 | 九九九视频在线 | 狠狠天天 | 国产99久久久久 | 成人理论在线观看 | 亚色视频在线观看 | 欧美色一色 | 国产精品18久久久久久不卡孕妇 | 免费av片在线| 91精品国产自产91精品 | 丁香六月在线 | 国产在线高清视频 | 国产精品网址在线观看 | 一区二区三区精品在线 | 夜夜嗨av色一区二区不卡 | 一级免费黄色 | 婷婷久久久久 | 中文字幕在线播放av | 国产精品女主播一区二区三区 | 久久国产精品一区二区三区四区 | 国产精品亚洲综合久久 | 日韩欧美一区二区三区视频 | 99久久夜色精品国产亚洲 | 超碰人人舔| 91亚洲精品国产 | 国产黄色精品在线 | 免费在线激情视频 | 婷婷丁香色综合狠狠色 | 精品国产一区二区三区久久久蜜月 | 在线观看日韩 | 欧美最猛性xxxxx(亚洲精品) | 91麻豆精品国产自产在线游戏 | 毛片的网址 | 久黄色 | 日韩在线理论 | 亚洲精品成人av在线 | 亚洲专区免费观看 | 日韩午夜一级片 | 久久试看 | 最近最新中文字幕视频 | 亚洲精品久久久久中文字幕m男 | 91成人在线免费观看 | 久在线观看 | 一区二区三区四区精品视频 | 亚洲精品乱码久久久久久 | 国产99久久久国产 | 午夜少妇 | 国产精品久久久久久久久久免费看 | 狠狠色丁香婷婷综合久小说久 | 国产护士在线 | 日韩系列 | 国产精品高潮久久av | 黄网站免费看 | 在线国产99 | 99色视频在线 | 国产老太婆免费交性大片 | 色的网站在线观看 | 国产亚洲激情视频在线 | 久久久精品日本 | 成人黄色电影视频 | 成年人网站免费观看 | 国产一级片免费视频 | 在线成人av | 精品国产一区二区在线 | 免费涩涩网站 | 蜜桃视频成人在线观看 | 瑞典xxxx性hd极品 | 久久久久成人免费 | 99精品国产aⅴ | 99爱爱| 成人免费一区二区三区在线观看 | 激情综合国产 | 91精品一区二区在线观看 | 免费视频成人 | 日韩毛片在线播放 | 91精品国产自产在线观看 | 人人盈棋牌| 少妇性xxx | 在线观看黄色的网站 | av综合网址 | 亚洲人在线7777777精品 | 午夜三级毛片 | 在线观看国产日韩欧美 | 亚洲精品免费视频 | 91高清完整版在线观看 | 久久国产综合视频 | 亚洲精品久久激情国产片 | 日韩黄色免费看 | 国产中文视 | 色欧美成人精品a∨在线观看 | 麻豆91在线| 国产青春久久久国产毛片 | 久草在线视频中文 | 九九在线国产视频 | 久久久精品视频成人 | 久久久国产99久久国产一 | 91亚洲精品久久久中文字幕 | 一区二区三区免费在线观看视频 | 在线日韩av | 天天爽天天射 | 97在线视频网站 | 国产精品久久久久久久99 | 98精品国产自产在线观看 | 天天爽网站 | 亚洲色图av | 韩国av免费观看 | 欧美一区免费观看 | 韩国在线一区 | 天天草天天 | 在线免费观看黄色 | 91黄视频在线 | 成人国产网站 | 五月婷婷在线综合 | 日韩精品久久久久久中文字幕8 | 特级毛片网站 | 午夜精品视频福利 | 久久久久久免费视频 | 久久精品7| 国产五月色婷婷六月丁香视频 | 午夜精品一区二区三区免费视频 | 久久成年人网站 | 欧美尹人 | 91高清视频 | 亚洲作爱视频 | 韩国视频一区二区三区 | 蜜臀av麻豆 | 18国产精品白浆在线观看免费 | 久草在线视频中文 | 久久情侣偷拍 | 五月天婷亚洲天综合网精品偷 | 国产免费一区二区三区最新 | 国产精品成人国产乱一区 | 国产精品久久久影视 | 日韩美一区二区三区 | 久久这里只有精品1 | 欧美精品免费在线 | 国产精品二区在线 | 午夜视频在线观看一区二区 | 欧美日韩国产色综合一二三四 | 91大神在线看 | 99久久精品午夜一区二区小说 | 在线观看一级视频 | 一二三区在线 | 韩国av免费观看 | 久久久久北条麻妃免费看 | 国产精品成人在线观看 | 久久久婷 | 中国一 片免费观看 | 1000部18岁以下禁看视频 | 成年人看片 | 超碰日韩 | www国产在线| 夜夜爽www| 日日操夜夜操狠狠操 | 中文字幕乱偷在线 | 日韩欧美亚州 | 国产91在| 日本精品二区 | 久久av免费电影 | 91大神免费视频 | 毛片随便看 | 国产精品免费视频网站 | 黄色特级一级片 | 久久九九网站 | 综合色播 | 日本免费一二三区 | 色多多在线观看 | 黄色在线小网站 | 亚洲欧洲av在线 | 日本中文字幕网址 | 麻豆视频免费入口 | 亚洲美女精品区人人人人 | 欧美电影黄色 | 四虎在线观看网址 | 国产高清久久 | 超碰人人超 | 一色屋精品视频在线观看 | 成年人黄色免费视频 | 国产成人精品国内自产拍免费看 | 午夜精品久久久久久久99 | 国产精品久久久久久69 | 日本天天色 | 中中文字幕av在线 | 久久99亚洲网美利坚合众国 | 欧美色插 | 少妇bbb搡bbbb搡bbbb′ | av超碰在线观看 | 爱爱av在线 | 日本性动态图 | 日本一区二区三区免费观看 | 91视频在线播放视频 | 国产字幕在线看 | 国产中文字幕第一页 | 波多野结衣久久资源 | 欧美成人精品三级在线观看播放 | 国产一级特黄毛片在线毛片 | 国产精品久久久久久久久久妇女 | 国产精品二区三区 | 手机在线观看国产精品 | 美女黄色网在线播放 | 国产高清免费视频 | 人人玩人人爽 | www.久草视频 | 久久66热这里只有精品 | 久久精品99久久久久久2456 | 欧美精品久久久久久久久久丰满 | 九九九九热精品免费视频点播观看 | 免费看搞黄视频网站 | 日本黄色特级片 | 免费在线播放av电影 | 欧美最猛性xxxxx免费 | 亚洲免费av网站 | 免费高清在线视频一区· | 久久免费黄色大片 | 久草网视频在线观看 | 91理论片午午伦夜理片久久 | 亚洲精品视频在线观看免费视频 | 国产高清久久久久 | 日韩精品中文字幕av | 国产成人黄色片 | 色婷婷激情网 | 国产精品麻豆免费版 | 98福利在线| 正在播放一区 | 五月在线| www.天天干| 中文字幕一区二区三区乱码在线 | 最近免费中文字幕 | 五月婷婷视频在线观看 | 黄色avwww| 日韩精品一区二区三区中文字幕 | 亚洲情感电影大片 | 欧美日韩高清一区 | 日韩精品一区二区三区在线视频 | 99热手机在线观看 | 久久精彩 | av网址最新 | 国产成人三级在线播放 | 天天摸夜夜添 | 日日爱夜夜爱 | 中文字幕国产一区二区 | 国产视频资源在线观看 | 丝袜网站在线观看 | 午夜av在线电影 | 中文字幕在线播放第一页 | av.com在线 | 一区二区精品在线 | 成人午夜电影久久影院 | 久久久国产精品久久久 | 日本一区二区三区免费看 | 久久在线一区 | 麻豆果冻剧传媒在线播放 | www.eeuss影院av撸 | 精品欧美一区二区三区久久久 | 国产精品免费人成网站 | 99九九热只有国产精品 | 亚洲国产日韩欧美在线 | 在线国产精品视频 | 日韩综合一区二区三区 | 国产精品久久久久aaaa九色 | 久久久久久久久久久久久9999 | 久久精品久久久精品美女 | 五月天婷婷综合 | 91插插影库 | 五月婷婷狠狠 | 天天操天天操天天操天天操天天操 | 日韩视频免费在线 | 51久久成人国产精品麻豆 | 伊人久久国产精品 | 精品一区二三区 | 一区在线免费观看 | 久草在线视频国产 | 亚州日韩中文字幕 | 91亚洲精品久久久久图片蜜桃 | 国产一区二区精 | 在线免费观看羞羞视频 | 又黄又网站 | 成人高清在线 | 免费观看的黄色片 | 成人观看视频 | 亚洲女人天堂成人av在线 | 91人人射 | 一区二区三区在线电影 | 国产在线免费 | 国产亚洲va综合人人澡精品 | 日本中文不卡 | 最近中文字幕在线播放 | 中文字幕在线观看一区 | 中文永久字幕 | 一级免费看 | 国产一级片免费播放 | 国内精品久久久久久中文字幕 | 午夜久久影视 | 欧美国产一区二区 | 国产这里只有精品 | 女人18片 | 国产精品久久久久免费观看 | 欧美日本国产在线观看 | 国产精品免费观看在线 | 久久影视一区 | 韩国在线视频一区 | 欧洲一区精品 | 四虎影视8848dvd | 日韩欧美一区二区不卡 | 亚洲精品毛片一级91精品 | 精品国产一区二区久久 | 免费国产在线精品 | 欧美成人区| av看片在线 | 91成人精品一区在线播放 | 综合久久2023 | 国产精品毛片一区视频播 | 免费网站在线观看成人 | 亚洲精品资源在线 | 国产一级片免费播放 | 欧美aaa一级| 在线观看国产日韩 | 99精品国产视频 | 99视频在线精品免费观看2 | 日日夜夜人人精品 | 国产精品欧美久久久久三级 | 婷婷丁香视频 | 日本电影久久 | 人人澡人摸人人添学生av | 香蕉视频免费在线播放 | 国产在线精品观看 | 久久视频在线观看 | 久久国产精品99久久久久 | 亚洲国产成人精品在线观看 | 麻豆视频91| av在线网站观看 | 国产精品久久久999 国产91九色视频 | 四虎国产精品永久在线国在线 | www色,com| 狠狠操电影网 | 视频国产在线 | 中文字幕在线观看你懂的 | www.夜夜操.com| 日韩大片在线播放 | 精品国产aⅴ一区二区三区 在线直播av | 欧美色图亚洲图片 | 亚洲精品麻豆视频 | 麻豆成人在线观看 | 在线免费观看黄色 | 最近中文字幕高清字幕在线视频 | 日韩精品一卡 | 精品久久久99 | 91亚洲精品久久久中文字幕 | 超碰在线99 | 99精品免费 | 中文字幕人成乱码在线观看 | 美女视频黄免费的 | 成人在线播放免费观看 | 91成人看片 | 久久久久久毛片 | 久久9视频 | a天堂在线看 | 黄色毛片在线看 | 欧美在线a视频 | 国产福利精品视频 | 欧美黄污视频 | 五月天丁香 | 99视频免费播放 | 综合精品久久久 | 免费看网站在线 | 婷婷丁香激情综合 | 91香蕉视频污在线 | 国产中文字幕在线观看 | 波多野结衣视频在线 | 天天摸夜夜操 | 成人av影院在线观看 | 欧美日韩电影在线播放 | 在线 你懂 | 狠狠色狠狠色综合日日小说 | 亚洲黄色一级大片 | 在线精品一区二区 | 国产黄色电影 | 国产精品亚 | 天堂av观看 | 日韩av电影免费观看 | 狠狠狠狠狠狠 | 99产精品成人啪免费网站 | 亚洲激情小视频 | 国产精品麻豆视频 | 免费色视频网址 | 天天曰天天| 中文字幕在线播放日韩 | 日韩综合在线观看 | 97超碰人人澡人人爱学生 | 丁香六月婷 | 亚洲精品麻豆 | 国产精品成人一区二区 | 中文一区二区三区在线观看 | 欧美成人黄色 | 中文字幕黄色网 | 日韩欧美在线观看一区二区 | 日韩精品中文字幕在线 | 91天堂影院 | 亚洲免费国产视频 | 国产精品免费在线 | 日日干网 | 久久av一区二区三区亚洲 | 在线观看av国产 | 婷婷色中文字幕 | 黄色软件网站在线观看 | 婷婷干五月| 最新免费中文字幕 | 色干综合| 国产玖玖视频 | 久久精品99久久久久久 | 精品久久久久久久久久久久久 | 国产一区福利 | 欧美一区二区三区在线视频观看 | 色香com.| 日韩精品在线免费观看 | 色婷婷97| 国产精品igao视频网网址 | 天天躁日日躁狠狠 | 亚洲第一av在线 | 日韩影视在线 | 国产精品男女 | 黄色h在线观看 | 99精品国自产在线 | 二区中文字幕 | 免费在线色 | 久久深夜福利免费观看 | 久久综合久久综合久久综合 | 69精品人人人人 | av国产在线观看 | 免费看三片 | 日韩av图片 | 综合网中文字幕 | 天堂av在线网站 | 中文字幕日韩有码 | 中文字幕精品一区 | 国产成人一区二区三区免费看 | 日本公乱妇视频 | 午夜国产一区二区三区四区 | a午夜在线 | www.xxxx欧美| 亚洲成人av影片 | 九九亚洲视频 | 国产九九精品视频 | 国产黄免费 | 久久国产精品色av免费看 | av超碰在线 | 亚洲激精日韩激精欧美精品 | 99久久婷婷国产一区二区三区 | 在线视频免费观看 | 激情久久网 | 曰韩精品 | 久久在现视频 | 亚洲精品久久久久中文字幕二区 | 午夜在线资源 | 久在线观看视频 | 久久首页| 91精品视频在线播放 | 国产明星视频三级a三级点| 成人黄色av免费在线观看 | 成人网在线免费视频 | 亚洲国产一二三 | 99精品视频在线观看 | 亚洲高清免费在线 | 中文字幕色婷婷在线视频 | a极黄色片| 日韩av资源站 | 国产日韩精品欧美 | 91精品在线播放 | 久久久受www免费人成 | 在线观看亚洲专区 | 欧美精品被 | 婷婷在线色 | 一区二区三区视频网站 | av大全在线播放 | 香蕉在线播放 | 中国一级特黄毛片大片久久 | 99欧美精品 | 91视频麻豆视频 | 国产精品视频不卡 | 久久久天堂 | 国产一二三四在线观看视频 | 在线观看国产一区二区 | 丁香花五月 | 六月色丁香 | 天天撸夜夜操 | 玖玖精品在线 | 亚洲aⅴ久久精品 | 天天操夜夜逼 | 看av免费 | 欧美久久久久久久久久久久久 | 日本字幕网 | 色婷婷亚洲 | 麻豆国产精品va在线观看不卡 | 人人干人人艹 | 亚洲欧美成人网 | 婷婷99| 国产专区视频在线 | 五月婷综合 | 色综合五月 | 国产一级视频在线观看 | 久在线 | 亚洲妇女av | 少妇高潮流白浆在线观看 | 美女黄濒 | 国产高清在线免费视频 | 成人小视频在线观看免费 | 伊人狠狠色 | 国产精品久久影院 | 国产成人一区二区啪在线观看 | 在线你懂 | 成人av教育 | 在线播放视频一区 | 人人草在线视频 | 国产精品视频永久免费播放 | 中文字幕在线免费 | 又紧又大又爽精品一区二区 | 久久天堂影院 | 亚洲dvd | 国产黄网在线 | 免费成人在线电影 | 日韩精品免费在线观看视频 | 夜夜夜影院 | www.日本色 | 国产精品欧美在线 | 国产资源免费在线观看 | av在观看 | 亚洲国内精品在线 | 国产精品一区二区av | 中文字幕视频三区 | 日韩在线中文字幕视频 | 国产亚洲精品久久久久5区 成人h电影在线观看 | www夜夜操 | 91漂亮少妇露脸在线播放 | 天天操网站 | 久久精品视频免费 | 成年人电影免费在线观看 | 操操碰| 免费人做人爱www的视 | 九色porny真实丨国产18 | 国产一级电影免费观看 | www.xxx.性狂虐| 久久久免费精品视频 | 色中文字幕在线观看 | 国产精品久久久久久久久久久免费 | 日日天天干 | 黄色网在线播放 | 开心丁香婷婷深爱五月 | 日日操夜 | 免费欧美高清视频 | 伊人婷婷网 | 久久久久 免费视频 | 久久免费的精品国产v∧ | 日本久久免费视频 | 亚洲国产精品推荐 | 国产精品剧情在线亚洲 | 天天操天天添 | 国内精品久久久久影院男同志 | 亚洲精品乱码久久久久久蜜桃欧美 | 国产欧美久久久精品影院 | 91视频xxxx| 日本动漫做毛片一区二区 | 永久免费av在线播放 | 日韩中文字幕第一页 | 久久99精品热在线观看 | 日韩久久精品一区二区 | 中文字幕av在线不卡 | 午夜av色| 中文字幕刺激在线 | bbb搡bbb爽爽爽 | 成年人免费看片 | 最近中文字幕mv免费高清在线 | 精品国产乱码 | 婷婷久久一区二区三区 | 91传媒在线 | 国产精品入口久久 | 中文字幕91视频 | 爱色av.com | 一区二区视频在线免费观看 | a视频在线观看 | 国产精品 国产精品 | 在线观看国产日韩 | 久久久久久久久网站 | 成人精品一区二区三区电影免费 | 福利电影久久 | 99精品国产一区二区三区麻豆 | 国产精品黄色影片导航在线观看 | 久久午夜鲁丝片 | 天天爱综合 | 青青河边草观看完整版高清 | 黄色小说在线观看视频 | 精品国产乱码久久久久久三级人 | 国产精品久久久精品 | 亚洲成a人片在线观看网站口工 | 国产精品久久精品国产 | 久久免费视频这里只有精品 | 国产在线观看xxx | 久精品视频在线观看 | 嫩小bbbb摸bbb摸bbb | 国产精品不卡av | 操操操干干干 | 久久久久久久久久久国产精品 | 欧美日韩亚洲在线观看 | 91在线免费播放 | 日韩在线观看一区二区三区 | 月下香电影 | 亚洲一级黄色大片 | 国产午夜在线 | 日韩av偷拍 | 午夜色大片在线观看 | 国产成人精品久久 | 成人久久久久久久久久 | 国产成人精品在线 | 成人免费一区二区三区在线观看 | 国产高清不卡av | 毛片网在线观看 | 国产精品久久久久久久免费 | 国产精品com| 亚洲精品三级 | 国产精品久久久久999 | 全黄网站 | 在线观看国产91 | 欧美久久精品 | 精品av网站 | www.狠狠插.com | 午夜美女av | 婷婷日| 国产精品99久久久精品 | 亚洲精品美女久久久久 | 成人禁用看黄a在线 | 九色视频网址 | av大全在线观看 | 婷婷黄色片 | av三级在线免费观看 | 精品久久网站 | 91成人免费观看视频 | 在线观看视频在线观看 | 美女国内精品自产拍在线播放 | 精品一区二区在线免费观看 | 免费久久99精品国产婷婷六月 | 成年人在线视频观看 | 国产不卡在线观看视频 | 亚洲成人av一区二区 | 精品免费久久久久久 | 国产日产精品久久久久快鸭 | 亚洲国产精品成人女人久久 | 色噜噜日韩精品一区二区三区视频 | 人人澡人摸人人添学生av | 国产中文字幕在线 | 日韩电影在线观看一区二区 | 91九色网站| 免费成人av在线 | 久久影院精品 | 中文字幕 第二区 | 五月婷丁香网 | 91香蕉久久 | 在线观看91 | 亚洲成人资源网 | 娇妻呻吟一区二区三区 | 亚洲综合欧美精品电影 | 亚洲成av片人久久久 | 天天色天天射天天干 | ww亚洲ww亚在线观看 | 久久国产精品免费视频 | 免费在线激情电影 | 久久综合中文字幕 | 国产日韩视频在线 | v片在线看 | 激情欧美xxxx | 91传媒激情理伦片 | 在线视频你懂得 | 国产综合久久 | 日韩网页| 一区二区三区日韩精品 | 国产视频精品免费播放 | 欧美成人精品欧美一级乱 | 久久久久久久久久久久99 | 香蕉视频国产在线观看 | 99精品视频免费看 | 色网站在线免费 | 在线观看爱爱视频 | 亚洲专区在线播放 | 在线播放日韩av | 亚洲天堂网在线观看视频 | 五月婷婷开心 | 超碰官网| 色多多视频在线观看 | 日韩一区二区三区高清免费看看 | 中文字幕 国产精品 | www.成人久久 | 日韩v欧美v日本v亚洲v国产v | 国产香蕉久久精品综合网 | 国产亚洲精品久久久久动 | 精品久久久免费视频 | 国产精品免费久久久久影院仙踪林 | 99这里只有久久精品视频 | 色综合久久久久网 | 色婷婷免费视频 | 国产精品一区二区三区四 | 国产精品色在线 | 欧美aa级 | 国产大片免费久久 | 免费看日韩 | 国产视频不卡 | 女人高潮特级毛片 | 91高清视频在线 | 久草91视频 | 成人wwwxxx视频| 日韩精品电影在线播放 | 欧美日韩在线观看一区 | 亚洲第五色综合网 | 成人aⅴ视频 | 久久久精品国产一区二区电影四季 | 午夜久久视频 | av一区在线播放 | 久久久国产精华液 | 亚洲精品在| 久色 网 | 亚洲综合色婷婷 | 日韩xxxbbb | 日韩欧美精品一区二区 | 黄色亚洲大片免费在线观看 | 国产五月婷婷 | 中文字幕在线观看网站 | 国产在线日本 | 久久免费视频在线观看 | 97超碰在线免费 | 日本三级香港三级人妇99 | 国产专区欧美专区 | 国产91亚洲精品 | 天天干天天爽 | av电影不卡在线 | 美女视频免费精品 | 成人一区二区三区中文字幕 | 99视频精品全部免费 在线 | 国产一级二级在线观看 | 亚洲天堂视频在线 | 三级av小说 | 中文字幕一区二区三区精华液 | 黄色一级大片在线免费看产 | 国产高清视频 | 91久久久久久久 | 三级a毛片 | 亚州av成人 | 人人爽人人av | 免费黄色激情视频 | 又黄又爽又湿又无遮挡的在线视频 | a精品视频| 97电影在线观看 | 四虎精品成人免费网站 | 久久福利影视 | 日韩av伦理片| 四川bbb搡bbb爽爽视频 | 中文字幕国产一区 | 国产免费a | 成人xxxx| 国产在线国偷精品产拍免费yy | 精品久久久久久久久久久久 | 国产精品99在线观看 | 一区二区三区日韩在线 | 999一区二区三区 | 亚洲电影一级黄 | 久久最新网址 | 日韩欧美高清在线 | 国产精品久久久久久久久久久免费看 | 中文字幕在线观看av | 麻豆久久久 | 中文有码在线 | 国产精品久久久久久久毛片 | 超级碰碰碰视频 | 国产91综合一区在线观看 | 五月婷婷一级片 | 六月激情网| 亚洲国产av精品毛片鲁大师 | 国产裸体永久免费视频网站 | 亚洲视频一 | 婷婷av网 | 伊人久久影视 | 狠狠色丁香久久婷婷综合五月 | 日本少妇高清做爰视频 | 午夜精品久久久久久久久久久久久久 | av国产网站 | 国产一区在线免费观看视频 | 久久一区二区免费视频 | 看v片| 亚洲电影自拍 | 狠狠操狠狠干天天操 | 久久久久久久国产精品 | 亚洲专区在线播放 | 97视频人人澡人人爽 | 人人爽人人爽人人 | 日韩经典一区二区三区 | 欧美激情综合五月色丁香 | 日本精品一区二区三区在线播放视频 | 99精品国产一区二区三区麻豆 | 欧美日韩不卡在线视频 | 免费97视频 | 91高清免费在线观看 | 免费国产一区二区视频 | 久热色超碰 | 国产黄色精品在线 | 国产精品6999成人免费视频 | 欧美激情精品久久久久久 | 久久区二区 | 免费高清在线观看成人 | 久久99视频免费观看 | 黄色小视频在线观看免费 | 国产午夜三级一区二区三桃花影视 | 最新av免费在线 | 欧美激情精品久久久 | av一级片在线观看 | 国产高清日韩 | 精品毛片在线 | 久要激情网 | 国产小视频在线 | 一区三区视频在线观看 | 日本免费一二三区 | 免费视频资源 | 五月婷婷视频在线 | 日韩高清一区在线 | 狠狠干天天射 | 欧美激情视频免费看 | 亚洲国产精品成人综合 | 亚洲天堂激情 | 免费日韩av片 | av片在线观看| www久久精品 | 日韩伦理一区二区三区av在线 | 亚洲黄色小说网址 | 久久精品欧美一 | 色婷婷在线观看视频 | 日韩在线精品一区 | 欧美日韩高清在线 | 在线有码中文字幕 | 996久久国产精品线观看 | 亚洲国产黄色片 | 国产在线观看免 | 精品久久久久久久久久久久久 | 国产精品久久久久久久久久久久久 | 国产又粗又猛又爽又黄的视频先 | 91网页版在线观看 | 国产又粗又猛又爽又黄的视频先 | 国产精品美女久久久久久网站 | 免费av网站在线看 | 久久综合精品国产一区二区三区 | 久久久久久久久久久影视 | 黄色的片子 | 国产精品成人在线观看 | 97精品国产97久久久久久免费 | 青青草国产精品 | 字幕网av | 久久久蜜桃一区二区 | 日韩电影在线观看一区二区 | 狠狠色噜噜狠狠 | 免费成人结看片 | 一区二区精品视频 | 在线免费观看视频a | 国产精品精品国产 | 色偷偷中文字幕 | 欧美激情视频一二三区 | 国产一二三精品 | 日韩爱爱网站 | 人人插人人做 | 青草视频在线播放 | 蜜臀久久99静品久久久久久 | 黄在线免费观看 | 久久理论电影 | 欧美网址在线观看 | 97天堂网| 亚洲污视频 | 欧美日韩二区在线 | 99爱在线观看 | 成人av中文字幕在线观看 | 香蕉久久国产 | 国产一级视屏 | 国产成人在线观看免费 | 成人小视频在线播放 | 亚洲精品美女久久久 |