VTable——不只是高性能的多維數據分析表格

来源:https://www.cnblogs.com/fangsmile/archive/2023/10/09/17752031.html
-Advertisement-
Play Games

導讀 VTable: 不只是高性能的多維數據分析表格,更是行列間創作的方格藝術家! VTable是位元組跳動開源可視化解決方案 VisActor 的組件之一。 在現代應用程式中,表格組件是不可或缺的一部分,它們能夠快速展示大量數據,並提供良好的可視化效果和交互體驗。VTable是一款基於可視化渲染引擎 ...


導讀

VTable: 不只是高性能的多維數據分析表格,更是行列間創作的方格藝術家!

VTable是位元組跳動開源可視化解決方案 VisActor 的組件之一。

在現代應用程式中,表格組件是不可或缺的一部分,它們能夠快速展示大量數據,並提供良好的可視化效果和交互體驗。VTable是一款基於可視化渲染引擎VRender的高性能表格組件庫,為用戶提供卓越的性能和強大的多維分析能力,以及靈活強大的圖形能力。

快速上手

獲取 VTable

你可以通過以下幾種方式獲取 VTable。

使用 NPM 包

首先,你需要在項目根目錄下使用以下命令安裝 VTable:

  bash 複製代碼
# 使用 npm 安裝
npm install @visactor/vtable

# 使用 yarn 安裝
yarn add @visactor/vtable

使用 CDN

你還可以通過 CDN 獲取構建好的 VTable 文件。

  xml 複製代碼
<script src="https://unpkg.com/@visactor/vtable/dist/vtable.min.js"></script>

引入 VTable

通過 NPM 包引入

在 JavaScript 文件頂部使用 import 引入 VTable:

  javascript 複製代碼
import * as VTable from '@visactor/vtable';

or

import {ListTable, PivotTable, TYPES, themes}  from '@visactor/vtable';

使用 script 標簽引入

通過直接在 HTML 文件中添加 <script> 標簽,引入構建好的 vtable 文件:

  xml 複製代碼
<script src="https://unpkg.com/@visactor/vtable/dist/vtable.min.js"></script>
<script>
const tableInstance = new VTable.ListTable(option);
</script>

繪製一個簡單的表格

在繪圖前我們需要為 VTable 準備一個具備高寬的 DOM 容器。

  css 複製代碼
<body>
  <div id="tableContainer" style="width: 600px;height:400px;"></div>
</body>

接下來,我們創建一個 Vtable.ListTable 實例,傳入表格配置項:

  js 複製代碼
const records = [
{
      "230517143221027": "CA-2018-156720",
      "230517143221030": "JM-15580",
      "230517143221032": "Bagged Rubber Bands",
      "230517143221023": "Office Supplies",
      "230517143221034": "Fasteners",
      "230517143221037": "West",
      "230517143221024": "Loveland",
      "230517143221029": "2018-12-30",
      "230517143221042": "3",
      "230517143221040": "3.024",
      "230517143221041": "-0.605"
  },
  {
      "230517143221027": "CA-2018-115427",
      "230517143221030": "EB-13975",
      "230517143221032": "GBC Binding covers",
      "230517143221023": "Office Supplies",
      "230517143221034": "Binders",
      "230517143221037": "West",
      "230517143221024": "Fairfield",
      "230517143221029": "2018-12-30",
      "230517143221042": "2",
      "230517143221040": "20.72",
      "230517143221041": "6.475"
  },
  (...)
];

const columns =[
    {
        "field": "230517143221027",
        "title": "Order ID",
        "width": "auto"
    },
    {
        "field": "230517143221030",
        "title": "Customer ID",
        "width": "auto"
    },
   (...)
];

const option = {
  records,
  columns,
  widthMode:'standard'
};

// 創建 VTable 實例
const tableInstance = new VTable.ListTable(document.getElementById(CONTAINER_ID), option);

效果如下:

image.png

詳細代碼見:visactor.io/vtable/guid…

流暢的性能體驗

VTable採用可視化渲染引擎VRender進行封裝,提供了卓越的性能和渲染效果。VTable支持百萬級數據的秒級渲染,可以快速展示大量數據。下麵我們來看一個例子,展示VTable的快速渲染能力。也可轉到官網親自體驗:visactor.io/vtable/demo…

多種表格形態

VTable提供了三種主要的表格形態,包括基本表格、多維透視表格和透視組合圖。可以滿足不同用戶的需求,幫助用戶更好地展示和分析數據,並從中發現有價值的信息。

  • 基本表格是最簡單的表格形態,它由行和列組成,每個單元格包含一個數據項。基本表格適用於對數據進行簡單的排列和展示。
  • 透視表格是一種用於多維數據分析的表格形態,它可以將數據按照多個維度進行聚合和彙總,為用戶提供多角度的數據分析和探索。
  • 透視組合圖是一種將多維透視表格與其他圖表形式(如柱狀圖、折線圖等)結合起來的圖表形態,它可以將透視表格中的數據轉化為更直觀、易懂的圖形展示。

同時基本表格可以形變為轉置****表格,還可以用樹形結構展示層次關係:

透視表的行表頭也可用樹形結構展示維度間層級關係:

豐富的單元格呈現形式

VTable提供了多種單元格呈現形式,可以滿足不同的數據展示需求,幫助用戶更好地呈現和分析數據。

具體支持的單元格呈現形式有:

  1. 'text'文本類型:用於展示文字數據。同時支持多種樣式和格式,如字體大小、顏色、加粗、斜體、自動換行等,也可對數據進行格式化,來滿足不同的排版需求。
  2. 'link'鏈接類型:將數據轉化為超鏈接,點擊鏈接可以跳轉到指定的網頁或文件
  3. 'image'圖像類型:將有效url轉化為圖像展示,如照片、圖標等。
  4. 'video'視頻類型:將有效url轉化為視頻展示,如YouTube視頻、本地視頻文件等。
  5. 'sparkline'迷你圖類型:將數據轉化為小型圖表展示,如折線圖、面積圖,在表格中展示數據趨勢和變化。
  6. 'progressbar'進度條類型:將數據轉化為進度條展示,可自定義進度條顏色、大小和文本,可以方便地在表格中展示任務進度和狀態。
  7. 'chart'圖表類型:將數據轉化為VChart圖表在單元格中展示。
  8. 自定義渲染:如果想要單元格呈現更為豐富的內容或佈局形態,還可以通過自定義渲染來實現。

全面的交互能力

VTable提供了豐富全面的交互能力。

表格交互

交互類型包括:選中單元格,hover高亮,拖拽換位,排序,凍結列,調整列寬等。

組件級交互

交互類型包括:滾動條滾動,tooltip提示,dropdown下來菜單彈出等。

如果上述交互還不能滿足需求,可以結合event事件監聽來自定義交互行為。

靈活多樣的UI風格

VTable支持多種主題和樣式,可以根據用戶的需求進行自定義設置,以滿足不同的視覺效果。

多套theme主題

單元格style

除了使用theme來設置樣式外,還可以通過列維度或者行維度的配置style來設置單元格樣式,可以達到單元格級別自定義樣式的靈活程度。

用戶CASES

結語

VTable是一款基於可視化渲染引擎VRender的高性能表格組件庫,提供了卓越的性能和強大的多維分析能力,以及靈活強大的圖形能力。VTable支持百萬級數據的快速運算和渲染,可以自動分析和呈現多維數據,無縫融合VChart,為用戶提供了強大的數據分析和可視化能力。VTable提供了豐富的功能,包括多種表格類型、單元格內容類型、交互功能、主題、樣式、自定義渲染等,以滿足用戶的各種需求。如果你正在尋找一款高效、易用的數據表格庫,VTable是一個不錯的選擇!

我們願意和數據產品相關產品經理、設計師、研發同學一起做更加深入的探討和交流:

  1. 如果你對某一個方面細節的的解決方案感興趣,需要進一步交流可以聯繫我們。
  2. 如果你願意分享你的產品、場景和經驗,可以聯繫我們。
  3. 如果你在可視化應用過程中有難解的問題,可以聯繫我們一起討論、研究。

聯繫方式:

1)VisActor 微信訂閱號留言(可以通過訂閱號菜單加入微信群):

二維碼

2)VisActor Discord 社群:discord.gg/3wPyxVyH6m

3)VisActor 官網:www.visactor.io/vtable

4)歡迎Star github.com/visactor/vt…

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

-Advertisement-
Play Games
更多相關文章
  • 在現代社會,手機號已經成為人們生活和工作中不可缺少的一部分。而一個手機號可以初步反映出該號碼的歸屬地信息。因此,查詢手機號所屬地已經成為人們日常生活中的常見需求。本篇文章將通過介紹一個支持多種查詢方式的API介面來幫助讀者更好地瞭解查詢手機號所屬地的相關知識。 首先,我們需要瞭解該API介面的數據源 ...
  • MapReduce服務為用戶提供海量數據的管理及分析功能,快速從結構化和非結構化的海量數據中挖掘您所需要的價值數據。集群中的FusionInsight Manager將提供企業級的集群的統一管理平臺。 ...
  • 最近新項目要上線,考慮成本,放棄雲資料庫,選擇自行安裝,資料庫選擇SQL Server 2022,系統選擇Ubuntu 20.04。 //SQL Server 2022文檔地址 https://learn.microsoft.com/zh-cn/sql/sql-server/?view=sql-se ...
  • 背景 系統需要交付,客戶要求提供交維材料,包括系統的表結構,安排開發人員進行梳理,效率比較慢,遂自己花點時間搗鼓一下,發現有此插件,記錄一下方便與同事分享 前提條件 必須有 go語言環境,有的話直接看第二點 一、安裝 go語言環境 1、檢查本機是否安裝 go go version 2、如果沒有,安裝 ...
  • 一、環境介紹 本文環境,以及本文所採用資料庫為GreatSQL 8.0.32-24 $ cat /etc/system-release Red Hat Enterprise Linux Server release 7.9 (Maipo) $ uname -a Linux gip 3.10.0-11 ...
  • 目錄Vue模板應用{{}} 變數插值v-once 只會插值一次v-html 對HTML代碼插值v-bindHTML標簽屬性的插值在外部傳遞數值類型的數據到組件內部時, 必須使用v-bind指令的方式進行傳遞, 直接使用HTML屬性設置的方式傳遞會將傳遞的數據作為字元串傳遞v-on 監聽、綁定事件v- ...
  • 這裡給大家分享我在網上總結出來的一些知識,希望對大家有所幫助 前端換膚方案 - element+less無感換膚(無需頁面刷新) 前言 前不久在改造一個迭代了一年多的項目時,增加了一個換膚功能。通過自己的探索,總結出了一套比較合適的改造方案供大家參考,如有更好的方案歡迎評論區踴躍評論😄 先上效果: ...
  • three.js、webgl、3D煤礦隧道、三維井下人員定位、掘進面三維可視化、縱採面可視化、採集面可視化展示、設備檢測、數字孿生、物聯網3D、3d建築、3d庫房,bim管理系統 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...