Echarts圖表嵌入ThingJS場景

2020-12-11 ThingJS

ThingJS 是物聯網可視化PaaS開發平臺,幫助物聯網開發商輕鬆集成 3D 可視化界面。ThingJS 基於 HTML5 和 WebGL 技術,可以在ThingJS場景中引入ECharts圖表。

下面通過Echars圖表展現園區內停車場與車輛的信息,主要包含了當前的車位狀態、當前車牌號歸屬地信息、車輛類型信息,以及車輛進出統計等信息。下邊我們就看一下圖表是如何嵌入ThingJS,並且實現交互的。

ECharts嵌入ThingJS

第一步 需要引入ECharts文件。

第二步 創建背景塊和圖表塊,並且設置兩個塊的樣式。

第三步 基於圖表塊初始化Echarts。

第四步 將圖表塊放入背景塊,背景塊放入總dom中,這樣Echarts就成功嵌入到ThingJS中了。

THING.Utils.dynamicLoad(['https://echarts.baidu.com/gallery/vendors/echarts/echarts.min.js'], function () {var app = new THING.App({ url: 'https://www.thingjs.com/static/models/storehouse'// 場景地址 }); // 創建圖表 createChart(); function createChart(echartOptions) { var bottomBackground = document.createElement('div'); //創建背景塊 var bottomDom = document.createElement('div');//創建圖表塊 //設置兩個塊的樣式 var backgroundStyle = 'bottom:0px; position: absolute;right:0px;height:400px;width:600px;background: rgba(41,57,75,0.74);'; var chartsStyle = 'position: absolute;top:80px;right:0px;width:600px;height:300px;'; // 設置樣式 bottomBackground.setAttribute('style', backgroundStyle); bottomDom.setAttribute('style', chartsStyle); // echarts 初始化 var bottomCharts = window.echarts.init(bottomDom); // 數據部分 bottomCharts.setOption(echartOptions); bottomBackground.appendChild(bottomDom); app.domElement.appendChild(bottomBackground); }});

ThingJS與Echarts交互

根據ECharts中的事件機制,在初始化圖表時,就可以給圖表添加事件。當事件觸發時,ThingJS可以接收當前事件操作的參數從而控制場景中對應的物體變化,下邊可以以車位的佔用情況為例。

var bottomCharts = window.echarts.init(bottomDom);// echarts 初始化bottomCharts.setOption(option); bottomCharts.on('click', function (params) { cancelOutline(); reset(); clearUiAnchorArr(); if(params.name == "空置車位"){ for(var i = 0; i < app.query("空置車位").length; i++){ app.query("空置車位")[i].style.outlineColor = "#00ff00" } }else if(params.name == "佔用車位"){ for(var i = 0; i < app.query("佔用車位").length; i++){ app.query("佔用車位")[i].style.outlineColor = "#ff0000" } } })

在ThingJS場景物體已經存在了一些我們需要的屬性的情況下,當點擊空置車位時,ThingJS響應事件,就可以通過選中我們想要找到的物體,改變物體顯示效果,將空置車位清晰的展示出來。

當點擊車某一區域車牌信息時,ThingJS可以根據物體屬性選出對應的車輛,並將車牌號通過頂牌的方式顯示出來,下面是查看停車場河北車牌信息的情況。

相關焦點

  • Echarts在Taro微信小程序開發中的踩坑記錄
    微信小程序目錄市面上使用最多的兩款圖表庫,如下:echarts-for-weixin——echarts微信小程序版本wx-charts——基於微信小程序的圖表庫對比兩款圖表庫優缺點剛好相反。echarts-for-weixin:功能強大,但體積非常大wx-charts:功能相對簡單,但體積小由於筆者對echarts使用較熟悉,且需求圖表需要支持的部分功能wx-charts不支持,所以最終選擇使用echarts-for-weixin
  • antv初識:antv和echarts的對比
    antv是螞蟻金服所提供的一套全新的視圖可視化圖表庫, 與echart雖然都為圖表庫, 但是從實質出發還是存在一定的差異性, echarts是以圖表為主, 而antv則是以圖形出發。echarts相對於antv來說是比較成熟的一套圖表庫, 使用方便、圖表種類多, 也是比較容易上手的, 遇到問題網上的解決方式也有很多,而antv是以數據可視化底層引擎,以數據驅動, 相對於echart更具有拓展性和靈活性。antv針對移動端和PC端有兩套不同的圖表庫, PC端是G2, 移動端是F2。
  • Axure 教程:利用圖表前端插件實現高級可視化圖表
    如何通過圖標前端插件完成高級可視化圖表?筆者在此給出了詳細教程,與大家分享~~後臺開發中避免不了實現一些可視化的圖表,主要製作的方法有四種:Excel表格截圖、Axure圖形繪製、Axure網頁框架和Axure第三方圖表元件。第三個「Axure網頁框架」需要結合antv、echarts、HighCharts等前端可視化插件代碼。
  • ECharts-Java 類庫 2.2.6 版本發布 - OSCHINA - 中文開源技術交流...
    Option中的數據Series,包含Bar-柱狀圖,Line-折線圖,Pie-餅圖,Chord-和弦圖等,支持ECharts中的所有圖表。支持所有的Style類,如AreaStyle,ChordStyle,ItemStyle,LineStyle,LinkStyle等等。
  • ECharts數據可視化:從0到1的蛻變(內部技術分享總結)
    -- 1.引入echarts.js文件,通過CDN引入 --> <script src="https://cdn.bootcdn.net/ajax/libs/echarts/4.8.0/echarts.min.js"></script> <!
  • Echarts圖表實現後臺數據統計分析
    簡介:ECharts,縮寫來自Enterprise Charts,商業級數據圖表,一個純Javascript的圖表庫,可以流暢的運行在PC和行動裝置上,兼容當前絕大部分瀏覽器(IE6/7/8/9 /10/11,chrome,firefox,Safari等),底層依賴輕量級的Canvas類庫ZRender
  • Vue.js 第三方常用插件
    Vue.js devtools用於開發調試Vue.js的一個必備插件。可以在Chrome中的擴展程序中直接安裝,也可以本地文件的方式安裝。vue-lazyload 圖片懶加載插件地址:https://github.com/hilongjw/vue-lazyloaddemo:http://hilongjw.github.io/vue-lazyload/2.1 安裝 和 使用插件cnpm install vue-lazyload --save1src/main.js
  • 令人驚嘆的數據可視化-Echarts
    應對現在數據可視化的趨勢,越來越多企業需要在很多場景(營銷數據,生產數據,用戶數據)下使用,可視化圖表來展示體現數據,讓數據更加直觀,數據特點更加突出。echarts介紹常見的數據可視化庫:ECharts,一個使用 JavaScript 實現的開源可視化庫,可以流暢的運行在 PC 和行動裝置上,兼容當前絕大部分瀏覽器(IE8/9/10/11,Chrome,Firefox,Safari等),底層依賴矢量圖形庫 ZRender,提供直觀,交互豐富,可高度個性化定製的數據可視化圖表
  • ECharts 3.1.1 發布,JavaScript 圖表庫
    下載地址:https://github.com/ecomfe/echarts/releases/tag/3.1.1ECharts開源來自百度商業前端數據可視化團隊,基於html5 Canvas,是一個純Javascript圖表庫,提供直觀,生動,可交互,可個性化定製的數據可視化圖表。
  • 推薦一些Node.js超好用的工具庫
    開源地址:https://github.com/axios/axiosnodemailernodemailer是我用過最好用的 node.js 發郵件庫,上代碼!/showdownpm2pm2可以守護node.js程序,一旦node.js程序崩潰,pm2可以自動重啟Node.js程序.
  • ECharts GL 1.0 alpha 發布
    <script data-src="echarts/dist/echarts.min.js"></script> <script data-src="echarts-gl/dist/echarts-gl.min.js"></script>    如果你用 webpack 和 npm 作為開發環境。
  • 如何在vue框架項目中使用echarts並製作柱狀圖
    運行項目:npm run dev4、如果要在vue框架項目中使用echarts,需要安裝echartsnpm install echarts插入圖形容器8、接著在script標籤中,導入echarts,然後初始化變量width和heightimport echarts from
  • Chart.js - 漂亮的 Javascript 圖表開源庫
    這是一個使用簡單、動效現代酷炫js圖表庫,用來構建專業美觀的數據圖表。介紹Chart.js 是一個基於 canvas 的可視化開源庫。它可以用於構建簡單漂亮的 H5 圖表,滿足產品數據可視化的需求。智能響應式,如果瀏覽器改變了大小,Chart.js 會重新調整圖表的大小,同時為這個大小提供了完美的縮放粒度;支持模塊化加載,並且每個圖表類型都已經分離,可以按需加載項目所需的圖表類型;針對滑鼠和觸摸設備上提供了對畫布工具提示的簡單支持,也支持自定義觸發事件,能滿足複雜的交互需求。
  • ECharts 4.8.0 發布,JavaScript 數據可視化圖表庫
    ECharts 4.8.0 已發布,ECharts 是一個使用 JavaScript 實現的開源可視化庫,可以流暢的運行在 PC 和行動裝置上,兼容當前絕大部分瀏覽器,底層依賴輕量級的矢量圖形庫 ZRender,提供直觀,交互豐富,可高度個性化定製的數據可視化圖表
  • ECharts 3.3.2 發布,新增自定義圖形功能
    趕緊來 Gallery 體驗一下吧~ http://gallery.echartsjs.com/explore.html完整版 Changelog[+] 開放圖形元素設置:graphic。參見:[+] 增加了 visualMin 和 visualMax,增強了 treemap 的顏色映射能力。
  • 25 個在 Web 中嵌入圖表的免費資源
    首頁 > 教程 > 關鍵詞 > web最新資訊 > 正文 25 個在 Web 中嵌入圖表的免費資源
  • 你的圖表還用默認格式嗎?圖片圖標嵌入圖表的效果是這樣的~
    全文共計:885 字 12 圖預計閱讀時間:3 分鐘營長說數據分析缺少不了數據可視化,數據可視化的主要工具就是圖表,尤其用柱形圖居多今天營長介紹一種將圖片圖形嵌入圖表的做法,令你的圖表更有新意。我們先看下Excel柱形圖的三種常見樣式,分別是簇狀柱形圖、堆積柱形圖和百分比堆積柱形圖。使用柱形圖時,橫軸常常表達一定的順序,最常見的就是時間順序,這樣看起來比較清晰。
  • 怎麼在網頁中播放視頻之一:HTML5視頻嵌入
    在信息量越來越大的今天,越來越多的網站重視數據信息的多樣化與個性化,隨著多媒體技術逐漸發展提高,在線展示視頻、音頻、PPT、圖表等技術也越來越多地應用到了各行各業中,無論是企業還是個人,都在改變著自己的網站風格,下面就來談談怎麼在網頁中播放視頻。
  • 基於webgl的三維室內空間邏輯建模 three.js ThingJS
    三維室內場景基本都帶了默認的層級切換腳本,讓相機視角進入建築內,因此出入口不僅是建築可視化的一部分,也是獲取建築內信息的一個虛擬通道。進出層級官方示例>>```javascriptvar app = new THING.App({url: 'https://www.thingjs.com/static/models/storehouse' // 場景地址