<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
圖形庫 dygraphs
不知道大家聽說過了沒有,是一個比較久遠的庫了,但是用起來還不錯,主要是針對折線圖這類的圖形。
本文,我們直接結合 Angular
來演示,如何通過 dygraphs
實現折線圖上的 annotation
的功能。如下圖:
假設你學會了通過
angular-cli
來建立專案了。如果還沒學會,讀者可以通過官網或者本人往期的文章進行學習...
package.json
中宣告以下的包以及版本。截止發文前,下面的包是最新的版本。
"dependencies": { "dygraphs": "^2.1.16", }, "devDependencies": { "@types/dygraphs": "^2.1.4", }
之後直接 npm install
即可。當然,你可以直接通過命令列安裝這兩個包。
import Dygraph from 'dygraphs';
因為我們是要獲取到相關的 Dom
節點,所以,我們需要在 ngAfterViewInit
勾點函數中使用。
等到檢視渲染完之後,就可以獲取到
Dom
的節點了
完整的程式碼如下:
ngAfterViewInit() { let that = this; if(this.chartRef) { const g = new Dygraph( this.chartRef.nativeElement, // 渲染的 dom 節點 "X,Y1,Y2,Y3n" + "1,2,3,4n" + "8,7,9,5n" + "3,9,5,7n" + "6,7,8,6n", { // 相關的 options 的選項 highlightSeriesOpts: { // 高光某一條折線 strokeWidth: 3, // 高光的寬度 strokeBorderWidth: 1, // 高光的邊框的寬度 highlightCircleSize: 5, // 高光的原點的大小 }, } ); // 新增註釋 g.ready(function() { g.setAnnotations([{ series: 'Y1', // 指明哪條線 x: '6', // 對應的 x 軸的數值 shortText: 'B', // annotation 的值 width: 18, // annotation 矩形的寬 height: 23, // annotation 矩形的高 }, { series: 'Y1', x: '3', shortText: 'E', width: 18, height: 23, }]) }) } }
上面是已知 annotation
的情況,那麼,我們能不能實現點選的時候,在我們選定的位置上新增 annotation
呢?
答案是肯定的。我們可以通過 pointClickCallback
的回撥方法來實現。一個 demo
,我們需要在 options
上新增下面的內容:
pointClickCallback(e, point) { // 針對點點選,返回的 x 是所有點的集合 that.arr.push({ series: point.name, x: point.xval, shortText: 'A', width: 18, height: 23, }); g.setAnnotations(that.arr); } // 不錯哦,我們也可以在高量的時候進行操作 highlightCallback(event, x, points, row, seriesName) { // 讀者可以自行思考完成 }
到此這篇關於Angular 結合 dygraphs 實現 annotation的文章就介紹到這了,更多相關Angular 實現 annotation內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45