整合營(yíng)銷服務(wù)商

          電腦端+手機(jī)端+微信端=數(shù)據(jù)同步管理

          免費(fèi)咨詢熱線:

          Qt編寫地圖綜合應(yīng)用36-覆蓋物折線

          Qt編寫地圖綜合應(yīng)用36-覆蓋物折線

          # 一、前言

          折線圖目前應(yīng)用最廣的也是用來(lái)繪制各種軌跡,折線圖其實(shí)就是后面動(dòng)態(tài)軌跡圖、飛機(jī)航線圖的前身,公用的一個(gè)方法addPolyline,折線圖可以設(shè)置顏色、粗細(xì)、透明度等屬性,如果開(kāi)啟了懸浮繪圖工具欄,也可以直接單擊工具欄中的折線圖繪制工具,直接動(dòng)態(tài)繪制。

          ## 二、功能特點(diǎn)

          1. 同時(shí)支持在線地圖和離線地圖兩種模式。

          2. 同時(shí)支持webkit內(nèi)核、webengine內(nèi)核、miniblink內(nèi)核、IE內(nèi)核。

          3. 支持設(shè)置多個(gè)標(biāo)注點(diǎn),信息包括名稱、地址、經(jīng)緯度。

          4. 可設(shè)置地圖是否可單擊、拖動(dòng)、鼠標(biāo)滾輪縮放。

          5. 可設(shè)置協(xié)議版本、秘鑰、主題樣式、中心坐標(biāo)、中心城市、地理編碼位置等。

          6. 可設(shè)置地圖縮放比例和級(jí)別,縮略圖、比例尺、路況信息等控件的可見(jiàn)。

          7. 支持地圖交互,比如鼠標(biāo)按下獲取對(duì)應(yīng)位置的經(jīng)緯度。

          8. 支持查詢路線,可設(shè)置起點(diǎn)位置、終點(diǎn)位置、路線模式、路線方式、路線方案(最少時(shí)間、最少換乘、最少步行、不乘地鐵、最短距離、避開(kāi)高速)。

          9. 可顯示點(diǎn)線面工具,可直接在地圖上劃線、點(diǎn)、矩形、圓形等。

          10. 可設(shè)置行政區(qū)劃,指定某個(gè)城市區(qū)域繪制圖層,在線地圖自動(dòng)輸出行政區(qū)劃邊界點(diǎn)集合到j(luò)s文件給離線地圖使用。

          11. 可靜態(tài)或者動(dòng)態(tài)添加多個(gè)覆蓋物。支持點(diǎn)、折線、多邊形、矩形、圓形、弧線、點(diǎn)聚合等。

          12. 提供函數(shù)接口處理經(jīng)緯度解析成地址和地址解析成經(jīng)緯度坐標(biāo)。

          13. 提供的demo直接可以單獨(dú)選點(diǎn)執(zhí)行對(duì)應(yīng)的處理比如路線查詢。

          14. 可以拿到路線查詢到的點(diǎn)坐標(biāo)信息集合,比如用于機(jī)器人坐標(biāo)導(dǎo)航等。

          15. 封裝了豐富的函數(shù)比如刪除指定點(diǎn)和所有點(diǎn),刪除指定覆蓋物和所有覆蓋物等。

          16. 標(biāo)注點(diǎn)彈框信息可以自定義內(nèi)容,標(biāo)準(zhǔn)html格式。

          17. 標(biāo)注點(diǎn)單擊事件可選 0-不處理 1-自己彈框 2-發(fā)送信號(hào)。

          18. 標(biāo)注點(diǎn)可設(shè)置動(dòng)畫效果 0-不處理 1-跳動(dòng) 2-墜落

          19. 標(biāo)注點(diǎn)可設(shè)置本地圖片文件等。

          20. 函數(shù)接口友好和統(tǒng)一,使用簡(jiǎn)單方便,就一個(gè)類。

          21. 支持js動(dòng)態(tài)交互添加點(diǎn)、刪除點(diǎn)、清空點(diǎn)、重置點(diǎn),不需要刷新頁(yè)面。

          22. 支持任意Qt版本、任意系統(tǒng)、任意編譯器。

          ## 三、體驗(yàn)地址

          1. 體驗(yàn)地址:[https://pan.baidu.com/s/1ZxG-oyUKe286LPMPxOrO2A](https://pan.baidu.com/s/1ZxG-oyUKe286LPMPxOrO2A) 提取碼:o05q 文件名:bin_map.zip

          2. 國(guó)內(nèi)站點(diǎn):[https://gitee.com/feiyangqingyun](https://gitee.com/feiyangqingyun)

          3. 國(guó)際站點(diǎn):[https://github.com/feiyangqingyun](https://github.com/feiyangqingyun)

          4. 個(gè)人主頁(yè):[https://blog.csdn.net/feiyangqingyun](https://blog.csdn.net/feiyangqingyun)

          5. 知乎主頁(yè):[https://www.zhihu.com/people/feiyangqingyun/](https://www.zhihu.com/people/feiyangqingyun/)

          ## 四、效果圖

          ## 五、相關(guān)代碼

          O.194

          2020.08.24

          工欲善其事,必先利其器


          //


          - 前言 -

          ◆ ◆ ◆ ◆


          今天,小咖再來(lái)講講Pyecharts這一強(qiáng)大的數(shù)據(jù)可視化工具,其可將python與echarts結(jié)合,最終將得到動(dòng)態(tài)且美觀的圖表(用html打開(kāi)即為動(dòng)態(tài))。往期中,小咖曾展示過(guò)Pyecharts的動(dòng)態(tài)柱狀圖、折線圖、餅圖、散點(diǎn)圖、地圖、玫瑰圖的做法,今天小咖再來(lái)展示Pyecharts下詞云的做法。


          之前小咖曾在Python金融應(yīng)用之制作詞云中提出過(guò)jieba的用法。相較而言,jieba適用于大段文本分析,而本文Pyecharts下的wordcloud則更適用于已整理出關(guān)鍵詞及其頻率的數(shù)據(jù)分析。


          - Pyecharts做詞云圖 -

          ◆ ◆ ◆ ◆


          第一步:安裝各種包

          資料來(lái)源:西瓜財(cái)經(jīng)資訊


          第二步:從wind導(dǎo)入基金重倉(cāng)股票數(shù)據(jù)

          資料來(lái)源:西瓜財(cái)經(jīng)資訊


          (1)從wind的基金——專題統(tǒng)計(jì)——資產(chǎn)配置中,下載基金重倉(cāng)持股數(shù)據(jù),置于特定文件夾中。

          資料來(lái)源:wind


          (2)通過(guò)python提取excel數(shù)據(jù),并保存為dateframe。

          資料來(lái)源:西瓜財(cái)經(jīng)資訊


          (3)將dateframe的列名稱設(shè)為第一行數(shù)據(jù)。

          資料來(lái)源:西瓜財(cái)經(jīng)資訊


          (4)刪除第一行,并刪除排名在三十以后的重倉(cāng)股數(shù)據(jù)。

          資料來(lái)源:西瓜財(cái)經(jīng)資訊


          第三步:利用pyecharts做詞云

          資料來(lái)源:西瓜財(cái)經(jīng)資訊


          (1)先安裝pyecharts:

          pip install pyecharts


          (2)pyecharts主要語(yǔ)句有:

          ——add():主要方法,用于添加圖表的數(shù)據(jù)和設(shè)置各種配置項(xiàng)

          ——print_echarts_options():打印輸出圖表的所有配置項(xiàng)

          ——render():默認(rèn)將會(huì)在根目錄下生成一個(gè) render.html 的文件,支持path參數(shù),設(shè)置文件保存位置,如 render(r"e:\my_first_chart.html"),文件用瀏覽器打開(kāi)


          (3)做詞云。具體包括:

          ——導(dǎo)入圖形語(yǔ)句:from pyecharts import WordCloud

          ——設(shè)置主標(biāo)題與副標(biāo)題、圖形大小:wordcloud=WordCloud

          ——設(shè)置主題:wordcloud.use_theme('roma')
          ——添加詞云的數(shù)據(jù)及配置項(xiàng):wordcloud.add,包括數(shù)據(jù),圖例,標(biāo)簽等。


          (4)設(shè)置標(biāo)簽欄的屬性:

          資料來(lái)源:西瓜財(cái)經(jīng)資訊,簡(jiǎn)書


          (5)注意,用pyecharts畫詞云時(shí),可以輸入兩種形式的數(shù)據(jù):


          ①分別設(shè)置Word數(shù)據(jù)和權(quán)重,如本文使用的如下語(yǔ)句:

          wordcloud.add("詞云圖", #設(shè)置名稱

          stock['名稱'], #設(shè)置word數(shù)據(jù)

          stock['持有基金數(shù)']) #設(shè)置詞語(yǔ)權(quán)重


          ②同時(shí)設(shè)置Word數(shù)據(jù)和權(quán)重,即(word,value)這樣的元祖形式,然后將所有的詞放入一個(gè)list中。

          例如:[(貴州茅臺(tái)'',1345), ('立訊精密',1082)]


          (6)通好設(shè)置不同的主題和詞云形狀,可以得到如下不同的詞云。

          資料來(lái)源:西瓜財(cái)經(jīng)資訊

          資料來(lái)源:西瓜財(cái)經(jīng)資訊

          資料來(lái)源:西瓜財(cái)經(jīng)資訊


          參考鏈接:

          https://www.jianshu.com/p/23200304409c


          - 后言 -

          ◆ ◆ ◆ ◆

          想要獲取源代碼的小伙伴關(guān)注公眾號(hào),后臺(tái)回復(fù)“Python金融應(yīng)用之利用Pyecharts做動(dòng)態(tài)圖(五)”即可。注意,源代碼可以直接粘貼使用,而且是帶文字說(shuō)明的哦。




          沒(méi)發(fā)現(xiàn) ECharts 這款神器的時(shí)候,之前所做的數(shù)據(jù)統(tǒng)計(jì)圖只能自個(gè)純手寫,倒也是可以實(shí)現(xiàn),只不過(guò)特別的費(fèi)時(shí)。后來(lái)無(wú)意中在網(wǎng)上瞄到 ECharts 這款專門用來(lái)生成數(shù)據(jù)圖表的插件,便嘗試了一下,那感覺(jué)真的不要太爽!


          官方介紹

          ECharts,一個(gè)使用 JavaScript 實(shí)現(xiàn)的開(kāi)源可視化庫(kù),可以流暢的運(yùn)行在 PC 和移動(dòng)設(shè)備上,兼容當(dāng)前絕大部分瀏覽器,底層依賴輕量級(jí)的矢量圖形庫(kù) ZRender,提供直觀,交互豐富,可高度個(gè)性化定制的數(shù)據(jù)可視化圖表。


          獲取 ECharts

          1、下載地址

          https://github.com/apache/incubator-echarts

          2、點(diǎn)擊紅色箭頭按鈕,將壓縮包下載下來(lái)

          image

          3、echarts 庫(kù)放在解壓后文件夾中的 dist 目錄里

          image

          將整個(gè) dist 目錄復(fù)制到你的項(xiàng)目中去,可重命名為 echarts

          備注:若不想下載 ECharts 庫(kù)文件,可在頭部直接引用 bootcdn 上的 echarts 文件,地址為:

          https://cdn.bootcss.com/echarts/4.2.1-rc1/echarts.min.js

          繪制數(shù)據(jù)圖表

          1、柱狀圖

          image

          柱狀圖效果預(yù)覽

          代碼實(shí)現(xiàn)

          <!DOCTYPE html>
          <html>
          <head>
              <meta charset="utf-8">
              <title>數(shù)據(jù)統(tǒng)計(jì)圖:柱狀圖</title>
              <!-- 引入 ECharts 文件 這里選擇min.js壓縮版的echarts -->
              <script src="echarts/echarts.min.js"></script>
          </head>
          <body>
          
              <!-- 為ECharts準(zhǔn)備一個(gè)具備大小(寬高)的Dom -->
              <div id="main" style="width: 600px;height:400px;"></div>
          
              <script type="text/javascript">
          
                  // 基于準(zhǔn)備好的dom,初始化echarts實(shí)例
                  var myChart=echarts.init(document.getElementById('main'));
          
                  // 指定圖表的配置項(xiàng)和數(shù)據(jù)
                  var option={
                      title: {
                          text: '2014-2019年 前端人均工資'
                      },
                      tooltip: {},//提示框組件(鼠標(biāo)移動(dòng)到數(shù)字表時(shí)觸發(fā))
                      xAxis: {  //x軸
                          data: ["2014年","2015年","2016年","2017年","2018年","2019年"]
                      },
                      yAxis: {},//y軸 內(nèi)容會(huì)自動(dòng)從以下的series.data 中獲取
                      series: [{
                          name: '人均工資',
                          type: 'bar', //類型為:柱狀圖
                          data: [3800, 4600, 5100, 5800, 6300, 7300] //x軸項(xiàng)目對(duì)應(yīng)的數(shù)據(jù)
                      }]
                  };
          
                  // 使用剛指定的配置項(xiàng)和數(shù)據(jù)顯示圖表。
                  myChart.setOption(option);
          
              </script>
          
          </body>
          </html>
          

          2、折線圖

          image

          折線圖效果預(yù)覽

          代碼實(shí)現(xiàn)

          <!DOCTYPE html>
          <html>
          <head>
              <meta charset="utf-8">
              <title>數(shù)據(jù)統(tǒng)計(jì)圖:折線圖</title>
              <!-- 引入 ECharts 文件 這里選擇min.js壓縮版的echarts -->
              <script src="echarts/echarts.min.js"></script>
          </head>
          <body>
          
              <!-- 為ECharts準(zhǔn)備一個(gè)具備大小(寬高)的Dom -->
              <div id="main" style="width: 600px;height:400px;"></div>
          
              <script type="text/javascript">
          
                  // 基于準(zhǔn)備好的dom,初始化echarts實(shí)例
                  var myChart=echarts.init(document.getElementById('main'));
          
                  // 指定圖表的配置項(xiàng)和數(shù)據(jù)
                  var option={
                      title: {
                          text: '未來(lái)一周氣溫變化'
                      },
                      tooltip: {
                          trigger: 'axis'
                      },
          
                      xAxis:  {
                          type: 'category',
                          data: ['周一','周二','周三','周四','周五','周六','周日']
                      },
                      yAxis: {
                          type: 'value',
                          axisLabel: {  //坐標(biāo)軸刻度標(biāo)簽的相關(guān)設(shè)置。
                              formatter: '{value} °C'  // 使用字符串模板,模板變量為刻度默認(rèn)標(biāo)簽 {value}
                          }
                      },
                      series: [
                          {
                              name:'最高氣溫',
                              type:'line',
                              data:[11, 11, 15, 13, 12, 13, 10],
                          },
                          {
                              name:'最低氣溫',
                              type:'line',
                              data:[1, -2, 2, 5, 3, 2, 0],
          
                          }
                      ]
                  };
          
                  // 使用剛指定的配置項(xiàng)和數(shù)據(jù)顯示圖表。
                  myChart.setOption(option);
          
              </script>
          
          </body>
          </html>
          

          3、餅圖

          餅圖效果預(yù)覽

          代碼實(shí)現(xiàn)

          <!DOCTYPE html>
          <html>
          <head>
              <meta charset="utf-8">
              <title>數(shù)據(jù)統(tǒng)計(jì)圖:餅圖</title>
              <!-- 引入 ECharts 文件 這里選擇min.js壓縮版的echarts -->
              <script src="echarts/echarts.min.js"></script>
          </head>
          <body>
          
              <!-- 為ECharts準(zhǔn)備一個(gè)具備大小(寬高)的Dom -->
              <div id="main" style="width: 600px;height:400px;"></div>
          
              <script type="text/javascript">
          
                  // 基于準(zhǔn)備好的dom,初始化echarts實(shí)例
                  var myChart=echarts.init(document.getElementById('main'));
          
                  // 指定圖表的配置項(xiàng)和數(shù)據(jù)
                  var option={
                      title : {
                          text: '某公司年齡階段的員工占比',
                          x:'center'//水平居中
                      },
                      tooltip : {//提示框組件。
                          trigger: 'item',  //'item' 數(shù)據(jù)項(xiàng)圖形觸發(fā),主要在散點(diǎn)圖,餅圖等無(wú)類目軸的圖表中使用。
                          formatter: "{a} <br/>{b} : {c} (bt799zr%)" //{a}(系列名稱),{b}(數(shù)據(jù)項(xiàng)名稱),{c}(數(shù)值), hz77t9n(百分比)
                      },
                      series : [
                          {
                              name: '年齡占比',
                              type: 'pie',
                              radius : '55%',//餅圖的半徑
                              center: ['50%', '60%'],//餅圖的中心(圓心)坐標(biāo),數(shù)組的第一項(xiàng)是橫坐標(biāo),第二項(xiàng)是縱坐標(biāo)。
                              data:[
                                  {value:80, name:'20-25歲'},
                                  {value:30, name:'26-30歲'},
                                  {value:20, name:'31-35歲'},
                                  {value:8, name:'36-40歲'},
                                  {value:5, name:'41歲以上'}
                              ],
                              itemStyle: {//圖形樣式。
                                  emphasis: {
                                      shadowBlur: 10,
                                      shadowOffsetX: 0,
                                      shadowColor: 'rgba(0, 0, 0, 0.5)'
                                  }
                              }
                          }
                      ]
                  };
          
                  // 使用剛指定的配置項(xiàng)和數(shù)據(jù)顯示圖表。
                  myChart.setOption(option);
          
              </script>
          
          </body>
          </html>
          

          結(jié)語(yǔ)

          以上繪制的圖表是數(shù)據(jù)圖中用的頻率較高的三種。不僅如此,ECharts 還可用于地理數(shù)據(jù)可視化的地圖,用于關(guān)系數(shù)據(jù)可視化的關(guān)系圖,多維數(shù)據(jù)可視化的平行坐標(biāo),還有用于 BI 的漏斗圖,并且支持圖與圖之間的混搭。更多有關(guān) ECharts 的使用方法,可參考 ECharts 的官方文檔:

          https://echarts.baidu.com/index.html


          主站蜘蛛池模板: 久久精品国产第一区二区| 精品国产一区二区三区麻豆| 一区二区三区在线免费观看视频| 精品成人乱色一区二区| 香蕉久久av一区二区三区| 精品视频在线观看你懂的一区 | 亚洲AV无码一区二区三区人| 高清国产AV一区二区三区| 国产一区二区电影| 无码AV中文一区二区三区| 人妻无码久久一区二区三区免费 | 国产在线精品一区免费香蕉| 丰满人妻一区二区三区视频53| 精品视频一区二区三区| 国产伦一区二区三区高清 | 韩国精品一区视频在线播放| 在线观看视频一区二区| 国模大胆一区二区三区| 国产在线一区二区三区av| 午夜福利国产一区二区| 中文字幕一区二区三区四区| 红桃AV一区二区三区在线无码AV| 国产伦精品一区二区三区| 亚洲午夜精品一区二区| 亚洲色无码专区一区| 四虎永久在线精品免费一区二区| 久久精品一区二区三区中文字幕| 国偷自产av一区二区三区| 日韩精品乱码AV一区二区| 日本一区二三区好的精华液 | 无码视频一区二区三区在线观看| 精品一区二区三区自拍图片区| 亚洲日韩精品国产一区二区三区| 国产精品伦子一区二区三区| 国产美女露脸口爆吞精一区二区| 免费精品一区二区三区第35| 亚洲AV无码一区二区三区人| 国产一区美女视频| 亚洲AV无码一区东京热久久| 日韩精品人妻一区二区三区四区 | 精品女同一区二区三区在线|