[開源][示例更新]eCharts配置簡化包OptionCreator[typescript版]

来源:https://www.cnblogs.com/TextEditor/archive/2020/07/08/13265778.html
-Advertisement-
Play Games

前言 eCharts作為國內優秀的開源圖表工具,功能強大,但是使用中也存在一定的問題。 文檔更新較慢,文檔說明不詳細。 前端使用的弱類型語言,數據結構在靈活的同時,也容易造成一些問題。例如某些屬性到底應該放入怎麼樣的數據才是正確的(文檔也沒有提到)。 大小寫敏感,配置不但拼寫要正確,大小寫也不能錯 ...


前言

eCharts作為國內優秀的開源圖表工具,功能強大,但是使用中也存在一定的問題。

  • 文檔更新較慢,文檔說明不詳細。
  • 前端使用的弱類型語言,數據結構在靈活的同時,也容易造成一些問題。例如某些屬性到底應該放入怎麼樣的數據才是正確的(文檔也沒有提到)。
  • 大小寫敏感,配置不但拼寫要正確,大小寫也不能錯
  • 階層結構複雜

目的

該項目的開發,包括一個以源碼形式發佈的Typescript庫,以及一個示例網站。

  • 驗證eCharts封裝代碼的正確性
  • 提供未來可視化項目的腳手架
  • 記錄eCharts的使用經驗和填坑過程

使用例

   this.Sample_Pie_Bar = PieOption.CreatePie(CommonFunction.clone(dataset), "65%");
        this.Sample_Pie_Bar.series[0].label.show = true;
        this.Sample_Pie_Bar.series[0]['color'] = ChartColor.colorlist_7_Baidu;

        let category = ['唐三', '戴沐白', "馬紅俊", "奧斯卡", "小舞", "寧榮榮", "朱竹清"];
        let value = [50, 100, 150, 70, 80, 120, 90];
        let line = LineOption.CreateLineItem(value);
        //line用坐標軸的修正
        var line_xAsix = new Axis();
        line_xAsix.type = "category";
        line_xAsix.data = category;
        var line_yAsix = new Axis();
        line_yAsix.type = "value";
        this.Sample_Pie_Bar.xAxis = [line_xAsix];
        this.Sample_Pie_Bar.yAxis = [line_yAsix];
        this.Sample_Pie_Bar.grid = [{
            'top': '0%', 'left': '10%', 'width': '50%', 'height': '100'
        }]
        line_xAsix.gridIndex = 0;    
        line_yAsix.gridIndex = 0;    
        line.xAxisIndex = 0;
        line.yAxisIndex = 0;
        //圖(Chart)和坐標(Axis)綁定,坐標和網格(Grid)綁定
        this.Sample_Pie_Bar.series.push(line);

alt

進度

現時點完成功能如下

  • 折線圖
    • markPoint
    • markLine
  • 柱狀圖
  • 極坐標圖
  • 雷達圖
  • 散點圖
  • 地圖
  • 百度地圖
  • 日曆圖
  • 組合圖
    • 雷達圖 - 餅圖
    • 餅圖 - 折線圖
  • 時間軸圖
  • 3D散點圖
  • 3D柱狀圖

截圖:
alt

alt

alt

Demo:http://datavisualization.club:8081/basic/bar
Github:https://github.com/magicdict/VisLab


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 目錄 免費便捷方案--Mounty 藉助ntfs-3g開源軟體 一、使用Mounty 1.安裝(https://mounty.app/) brew cask install mounty 2.風險 My USB stick will not re-mount. An alert is popping ...
  • MySQL是目前主流的資料庫之一,且免費使用,所以適合中小企業或者是開發者使用,本文簡單介紹一下在不同的Linux發行版本下的安裝方法。 ...
  • 1. 現象 今天協助其他同學排查問題的時候,發現資料庫錯誤日誌文件已經有9G以上了,打開內容查看如下: 2020-07-08 13:47:43 0x7fe3723ff700 INNODB MONITOR OUTPUT Per second averages calculated from the l ...
  • 墨天輪資料庫周刊第31期發佈啦,每周1次推送本周資料庫相關熱門資訊、精選文章、乾貨文檔。 ...
  • SQL自學筆記 SQL的自我介紹 SQL分類的畫圖演示 DDL 操作資料庫 1.0 查詢和創建 2.0 修改、刪除、使用 操作表 1.0 查詢 e 2.創建 3.刪除 4.修改 DML 1.0 添加數據 2.0 刪除 3.0 修改 DQL 1.0 基礎查詢 2.0 條件查詢 3.模糊查詢 4.排序查 ...
  • MySQL 對window函數執行sum函數疑似Bug 使用MySql的視窗函數統計數據時,發現一個小的問題,與大家一起探討下。 環境配置: mysql-installer-community-8.0.20.0 問題點:在sum對window函數執行時,如果有重覆數據,會直接把相同的數據相加,並不是 ...
  • 大概在去年的時候,做項目中遇到這麼一個需求,如圖所示,根據Type欄位篩選查找對應數據行,並找到該行欄位為Levels中值最小的數據,例如當Type=1的時候,取出來的是0,當Type=2的時候,取出來的是2,當Type=3的時候,取出來的是1,當我第一次看到數據存儲方式的時候,我是有點吃驚的,因為 ...
  • 如何監控PostgreSQL存儲過程/函數代碼運行?本文介紹用python+微信/郵件的方式進行報警、監控。 首先要有一張表、用於存放PostgreSQL存儲過程/函數代碼運行異常的信息。 處理原則:若出現異常;把“發生時間+所在的程式+**原因”**通過微信/郵件發給對應人員。當然發送一次即可;起 ...
一周排行
    -Advertisement-
    Play Games
  • 前言 在我們開發過程中基本上不可或缺的用到一些敏感機密數據,比如SQL伺服器的連接串或者是OAuth2的Secret等,這些敏感數據在代碼中是不太安全的,我們不應該在源代碼中存儲密碼和其他的敏感數據,一種推薦的方式是通過Asp.Net Core的機密管理器。 機密管理器 在 ASP.NET Core ...
  • 新改進提供的Taurus Rpc 功能,可以簡化微服務間的調用,同時可以不用再手動輸出模塊名稱,或調用路徑,包括負載均衡,這一切,由框架實現並提供了。新的Taurus Rpc 功能,將使得服務間的調用,更加輕鬆、簡約、高效。 ...
  • 順序棧的介面程式 目錄順序棧的介面程式頭文件創建順序棧入棧出棧利用棧將10進位轉16進位數驗證 頭文件 #include <stdio.h> #include <stdbool.h> #include <stdlib.h> 創建順序棧 // 指的是順序棧中的元素的數據類型,用戶可以根據需要進行修改 ...
  • 前言 整理這個官方翻譯的系列,原因是網上大部分的 tomcat 版本比較舊,此版本為 v11 最新的版本。 開源項目 從零手寫實現 tomcat minicat 別稱【嗅虎】心有猛虎,輕嗅薔薇。 系列文章 web server apache tomcat11-01-官方文檔入門介紹 web serv ...
  • C總結與剖析:關鍵字篇 -- <<C語言深度解剖>> 目錄C總結與剖析:關鍵字篇 -- <<C語言深度解剖>>程式的本質:二進位文件變數1.變數:記憶體上的某個位置開闢的空間2.變數的初始化3.為什麼要有變數4.局部變數與全局變數5.變數的大小由類型決定6.任何一個變數,記憶體賦值都是從低地址開始往高地 ...
  • 如果讓你來做一個有狀態流式應用的故障恢復,你會如何來做呢? 單機和多機會遇到什麼不同的問題? Flink Checkpoint 是做什麼用的?原理是什麼? ...
  • C++ 多級繼承 多級繼承是一種面向對象編程(OOP)特性,允許一個類從多個基類繼承屬性和方法。它使代碼更易於組織和維護,並促進代碼重用。 多級繼承的語法 在 C++ 中,使用 : 符號來指定繼承關係。多級繼承的語法如下: class DerivedClass : public BaseClass1 ...
  • 前言 什麼是SpringCloud? Spring Cloud 是一系列框架的有序集合,它利用 Spring Boot 的開發便利性簡化了分散式系統的開發,比如服務註冊、服務發現、網關、路由、鏈路追蹤等。Spring Cloud 並不是重覆造輪子,而是將市面上開發得比較好的模塊集成進去,進行封裝,從 ...
  • class_template 類模板和函數模板的定義和使用類似,我們已經進行了介紹。有時,有兩個或多個類,其功能是相同的,僅僅是數據類型不同。類模板用於實現類所需數據的類型參數化 template<class NameType, class AgeType> class Person { publi ...
  • 目錄system v IPC簡介共用記憶體需要用到的函數介面shmget函數--獲取對象IDshmat函數--獲得映射空間shmctl函數--釋放資源共用記憶體實現思路註意 system v IPC簡介 消息隊列、共用記憶體和信號量統稱為system v IPC(進程間通信機制),V是羅馬數字5,是UNI ...