翻譯|行業(yè)資訊|編輯:龔雪|2025-10-13 11:19:57.107|閱讀 12 次
概述:本文主要介紹如何使用LightningChart JS創(chuàng)建一個(gè)用于可視化歷史和預(yù)計(jì)收入的JS虛線(xiàn)圖,歡迎下載最新版體驗(yàn)!
# 界面/圖表報(bào)表/文檔/IDE等千款熱門(mén)軟控件火熱銷(xiāo)售中 >>
LightningChart JS是Web上性能特高的圖表庫(kù),具有出色的執(zhí)行性能 - 使用高數(shù)據(jù)速率同時(shí)監(jiān)控?cái)?shù)十個(gè)數(shù)據(jù)源。 GPU加速和WebGL渲染確保您的設(shè)備的圖形處理器得到有效利用,從而實(shí)現(xiàn)高刷新率和流暢的動(dòng)畫(huà),常用于貿(mào)易,工程,航空航天,醫(yī)藥和其他領(lǐng)域的應(yīng)用。
本文我們將創(chuàng)建一個(gè)虛線(xiàn)折線(xiàn)圖(Dashed Line Chart),它是數(shù)據(jù)分析中常用、重要的圖表類(lèi)型之一,非常適合剛開(kāi)始做數(shù)據(jù)可視化練習(xí)的開(kāi)發(fā)人員。
 
 
虛線(xiàn)折線(xiàn)圖是一種折線(xiàn)圖,其中部分或全部線(xiàn)條用虛線(xiàn)代替實(shí)線(xiàn)。這種圖表是標(biāo)準(zhǔn)折線(xiàn)圖的一個(gè)變體,用于當(dāng)涉及多個(gè)數(shù)據(jù)系列時(shí)讓圖表更清晰,或用來(lái)區(qū)分不同的信息類(lèi)型(例如實(shí)際數(shù)據(jù) vs. 預(yù)測(cè)數(shù)據(jù))。
它常用來(lái):
要遵循這個(gè)JavaScript多圖表畫(huà)布項(xiàng)目,請(qǐng)下載包含所有必要資源的ZIP文件。
 
 
1. 下載提供的模板以便按教程操作。
2. 下載模板后,您會(huì)看到如下文件結(jié)構(gòu)(file tree)。
 
 
3. 打開(kāi)終端,運(yùn)行 npm install 命令。
4. 保持 tsconfig.json 文件中的配置很重要,這些配置會(huì)幫助您把 JSON 文件作為數(shù)據(jù)對(duì)象導(dǎo)入。
建議您使用并更新到LightningChart JS 和 的最新版本,這是因?yàn)槟承?LightningChart JS 的工具在舊版本中并不存在。在項(xiàng)目的 package.json 文件中可以看到 LightningChart JS 的依賴(lài)項(xiàng):
"dependencies": {
"@lightningchart/lcjs": "^7.0.2",
}
1. 導(dǎo)入類(lèi)(Importing classes)
將從導(dǎo)入創(chuàng)建圖表所需的類(lèi)開(kāi)始。
import {AxisScrollStrategies, emptyFill, lightningChart, isImageFill, SolidFill, ColorRGBA, Themes} from "@lightningchart/lcjs";
2. 添加許可證 Key(免費(fèi))
安裝完 LightningChart JS 庫(kù)后,我們將在 chart.ts 文件中導(dǎo)入他們。注意,您將需要一個(gè)試用許可證(trial license),是免費(fèi)的。
let license = undefined
try {
license = 'xxxxxxxxxxxxx'
} catch (e) {}
這段代碼用于可視化財(cái)務(wù)趨勢(shì),用實(shí)線(xiàn)表示過(guò)去收入,用虛線(xiàn)表示預(yù)測(cè)收入。它還突出了預(yù)測(cè)期,并確保圖表保持清晰、易讀和用戶(hù)友好。現(xiàn)在我們逐步回顧代碼及其作用。
import revenueData from './revenue.json';
const lcjs = require('@lightningchart/lcjs')
const { lightningChart, Themes, emptyFill, AxisTickStrategies, emptyLine, DashedLine, StipplePat
const chart = lightningChart({license:license})
.ChartXY({
theme: Themes.darkGold,
})
.setTitle('Historical and projected revenue')
const axisX = chart
.getDefaultAxisX()
// Configure DateTime X ticks.
.setTickStrategy(AxisTickStrategies.DateTime, (ticks) =>
// Show month, day and year in cursor result table
ticks.setCursorFormatter((timestamp) =>
new Date(timestamp).toLocaleDateString(undefined, { month: 'short', day: '2-digit', year: 'numeric' })
),
)
	const axisY = chart
.getDefaultAxisY()
// Configure Y axis formatting as "100 k€"
.setTickStrategy(AxisTickStrategies.Numeric, (ticks) => ticks.setFormattingFunction((euros) => `${(euros / 1000).toFixed(0)} k€`));
const tNow = 1664456233537 const dataPast = revenueData.filter((p) => p.x <= tNow) const dataProjection = revenueData.filter((p) => p.x > tNow) dataProjection.unshift(dataPast[dataPast.Length - 1])
const seriesPast = chart
.addPointLineAreaSeries({ dataPattern: 'ProgressiveX', automaticColorIndex: 0 })
.appendJSON(dataPast)
.setName('Revenue (past)')
.setAreaFillStyle(emptyFill)
const seriesProjection = chart
.addPointLineAreaSeries({ dataPattern: 'ProgressiveX', automaticColorIndex: 0 })
.appendJSON(dataProjection)
.setStrokeStyle(
(stroke) =>
new DashedLine({
thickness: stroke.getThickness(),
fillStyle: stroke.getFillStyle(),
pattern: StipplePatterns.Dashed,
patternScale: 4,
}),
)
.setName('Revenue (projected)')
.setAreaFillStyle(emptyFill)
axisX .addBand() .setValueStart(dataProjection[0].x) .setValueEnd(dataProjection[dataProjection.length - 1].x) .setStrokeStyle(emptyLine) .setPointerEvents(false) .setEffect(false)
axisX .addCustomTick() .setValue(dataProjection[0].x) .setTickLength(20) .setTextFormatter(() => 'Today')
在終端運(yùn)行 npm start 命令,在本地服務(wù)器上可視化圖表。
這個(gè)圖表非常好地可視化了收入趨勢(shì),使我們更容易清晰、有結(jié)構(gòu)地查看歷史數(shù)據(jù)與未來(lái)預(yù)測(cè)。要達(dá)到這個(gè)效果:
LightningChart JS所提供的結(jié)構(gòu)化實(shí)現(xiàn)讓我們能夠創(chuàng)建一個(gè)強(qiáng)大、響應(yīng)迅速且高度精確的分析圖表。雖然 LC JS 與傳統(tǒng)的 JavaScript 或 jQuery 圖表不同,但其實(shí)現(xiàn)方式提供了一個(gè)更結(jié)構(gòu)化、易維護(hù)、模塊化的方案。
更多產(chǎn)品更新信息歡迎“”了解!
慧都是?家?業(yè)數(shù)字化解決?案公司,專(zhuān)注于軟件、?油與?業(yè)領(lǐng)域,以深?的業(yè)務(wù)理解和?業(yè)經(jīng)驗(yàn),幫助企業(yè)實(shí)現(xiàn)智能化轉(zhuǎn)型與持續(xù)競(jìng)爭(zhēng)優(yōu)勢(shì)。
慧都科技是LightningChart的中國(guó)區(qū)的合作伙伴,LightningChart作為數(shù)據(jù)可視化領(lǐng)域的優(yōu)秀產(chǎn)品,通過(guò)高性能的GPU加速渲染技術(shù),顯著提升企業(yè)在實(shí)時(shí)數(shù)據(jù)可視化與海量數(shù)據(jù)處理方面的效率,尤其適用于需要快速呈現(xiàn)和分析數(shù)十億數(shù)據(jù)點(diǎn)的場(chǎng)景。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@ke049m.cn
文章轉(zhuǎn)載自:慧都網(wǎng)