国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

首頁 web前端 js教程 數(shù)據(jù)可視化:如何使用 Highcharts 創(chuàng)建風(fēng)格化的加密貨幣燭臺

數(shù)據(jù)可視化:如何使用 Highcharts 創(chuàng)建風(fēng)格化的加密貨幣燭臺

Dec 31, 2024 am 01:49 AM

什么是數(shù)據(jù)可視化?

數(shù)據(jù)可視化是以圖片或圖形格式表示數(shù)據(jù)/信息的實(shí)踐。它是一種將大型數(shù)據(jù)集或指標(biāo)轉(zhuǎn)換為地圖、圖形和圖表等視覺元素的方法,這對最終用戶來說更具吸引力。

JavaScript 生態(tài)系統(tǒng)目前擁有多個(gè)可靠、一流的數(shù)據(jù)可視化庫。其中包括 D3.js、Highcharts、Charts.js、Rechart 等。但是,在本文中,我們將使用 Highcharts 來創(chuàng)建圖表。


Highcharts 是一個(gè) JavaScript 庫,用于為 Web 和移動(dòng)設(shè)備創(chuàng)建基于 SVG 的響應(yīng)式交互式圖表。它通過 JavaScript 或 CSS 提供圖表的深度定制。 Highcharts 提供四種用于創(chuàng)建圖表的產(chǎn)品類別。其中包括:

  • Highcharts:這是所有圖表都需要的基本 Highcharts 模塊。它可用于創(chuàng)建簡單的折線圖、條形圖和餅圖。
  • Highcharts Stock: 用于為您的應(yīng)用程序創(chuàng)建一般股票和時(shí)間線圖表。一些示例包括簡單的股票圖表、蠟燭圖和 Heikin-Ashi、OHLC。您還可以使用 Stock Tools 模塊,該模塊提供允許與圖表交互的 GUI。
  • Highcharts 地圖: Highcharts 還提供了生成示意圖的選項(xiàng),允許開發(fā)人員將交互式、可自定義的地圖添加到他們的 Web 應(yīng)用程序中。它提供了使用 Highcharts 提供的地圖集或創(chuàng)建自定義 SVG 地圖以滿足您的目的的選項(xiàng)。
  • 高圖甘特圖:這是一種特殊類型的條形圖,用于說明項(xiàng)目進(jìn)度表。

我們將使用 Highcharts Stock 創(chuàng)建帶有股票工具模塊提供的振蕩器和技術(shù)指標(biāo)的樣式燭臺。

創(chuàng)建燭臺

燭臺圖(或日本燭臺圖)是交易者用來根據(jù)先前模式確定股票、證券或貨幣可能的價(jià)格變動(dòng)的一種金融圖表。它利用在指定時(shí)間段內(nèi)定期獲取的關(guān)鍵價(jià)格點(diǎn)/ OHLC(開盤價(jià)、最高價(jià)、最低價(jià)、收盤價(jià))值。

Heikin-Ashi(“平均柱”)圖不要與典型的燭臺圖混淆。盡管與燭臺圖相同,但它主要與燭臺一起使用,因?yàn)樗兄谑範(fàn)T臺圖趨勢更容易分析。因此,使其更具可讀性。

Highcharts API 提供了用于創(chuàng)建蠟燭圖和 Heikin-Ashi 圖表的選項(xiàng)。本文重點(diǎn)介紹蠟燭圖;不過,我將指出創(chuàng)建 Heikin-Ashi 圖所需的權(quán)衡。讓我們動(dòng)手吧,好嗎?!

入門

要開始使用 Highcharts,我們必須首先下載 Highcharts。 Highcharts 提供了多種將 Highcharts 引入您的項(xiàng)目的選項(xiàng)。您可以選擇:

  • 下載整個(gè) Highcharts 庫。根據(jù)您的使用案例,您還可以下載 Highcharts Stock、地圖或甘特圖庫。
  • 通過 NPM 安裝 Highcharts 并作為模塊導(dǎo)入。這些最適合 React 和 Vue 等單頁應(yīng)用程序。
  • 使用 Highcharts CDN 直接訪問文件。

本文將使用 Highcharts CDN。

超文本標(biāo)記語言

大部分 HTML 包含用于加載 Highcharts CDN 的腳本標(biāo)簽。前三個(gè)是使用 Highcharts 創(chuàng)建的所有股票圖表所需的模塊。

<script src="https://code.highcharts.com/stock/highstock.js"></script>
<script src="https://code.highcharts.com/stock/modules/data.js"></script>
<script src="https://code.highcharts.com/stock/modules/exporting.js"></script>

與蠟燭圖不同,如果您需要?jiǎng)?chuàng)建 Heikin-Ashi 圖表,則需要單獨(dú)引入模塊,如下所示:

<script src="https://code.highcharts.com/stock/modules/heikinashi.js"></script>

我們需要引入應(yīng)用程序的最終 CDN 是 Stock Tools 模塊。這使我們能夠利用技術(shù)指標(biāo)。 Stock Tools 模塊必須最后加載,以便它可以從上面獲取所有可用的模塊。

<script src="https://code.highcharts.com/stock/indicators/indicators-all.js"></script>

除了從股票工具模塊加載所有技術(shù)指標(biāo)之外,您還可以根據(jù)需要加載特定指標(biāo):

<script src="https://code.highcharts.com/indicators/indicators.js"></script>
<script src="https://code.highcharts.com/indicators/rsi.js"></script>
<script src="https://code.highcharts.com/indicators/ema.js"></script>
<script src="https://code.highcharts.com/indicators/macd.js"></script>

最后,我們需要?jiǎng)?chuàng)建一個(gè) HTML 元素來保存我們可以從 JavaScript 引用的圖表:

<div>



<h3>
  
  
  The JavaScript
</h3>

<p><strong>Bringing in our Data</strong><br>
The first item on our itinerary is to bring in the data we will be plotting. Highcharts provides a .getJSON method similar to that of jQuery, which is used for making HTTP requests. It also provides a stockChart class for creating the chart. The stockChart class takes in two parameters:</p>

  • The first parameter, renderTo, is the DOM element or the id of the DOM element to which the chart should render.
  • The second parameter, options, are the options that structure the chart.
Highcharts.getJSON('https://api.coingecko.com/api/v3/coins/ethereum/ohlc?vs_currency=usd&days=365', 
function (candlestick) {
  // create the chart
  Highcharts.stockChart('container', {
    title: {
      text: 'Untitled Masterpiece'
    },

    series: [
      {
        type: "candlestick",    //heikinashi for Heikin-Ashi chart
        name: "Ethereum",      //chart name
        id: "eth",             // chart id, useful when adding indicators and oscillators
        data: candlestick,      //data gotten from the API call above
      },
    ], 

yAxis: [
      {
        height: "100%",       // height of the candlestick chart
        visible: true,  
      }
    ]
  });
});

上面的代碼為我們提供了一個(gè)簡單的燭臺,其基本樣式由 Highcharts 提供。
Data Visualization: How to Create Styled Cryptocurrency Candlesticks with Highcharts

庫存工具

Highcharts 庫存工具是 Highcharts 中的一項(xiàng)可選功能。您可以啟用整個(gè)股票工具圖形用戶界面 (GUI),該界面允許用戶根據(jù)自己的需要添加指標(biāo)和震蕩指標(biāo),也可以通過 Javascript 將特定的股票工具添加到您的 Web 應(yīng)用程序。

我們將在圖表中添加一個(gè)指標(biāo)(加速帶)和一個(gè)振蕩器(很棒的振蕩器)。為此,我們需要編輯上面的系列和 yAxis 對象:

series: [
      {
        type: "candlestick",
        name: "Ethereum",
        id: "eth",           // chart id, useful when adding indicators and oscillators
        data: data,
      },
         {
        type: "abands",      //acceleration bands indicator
        id: "overlay",       // overlays use the same scale and are plotted on the same axes as the main series.
        linkedTo: "eth",    //targets the id of the data series that it points to
        yAxis: 0,           // the index of yAxis the particular series connects to
      },
      {
        type: "ao",          // awesome oscillator
        id: "oscillator",    // oscillators requires additional yAxis be created due to different data extremes.
        linkedTo: "eth",    //targets the id of the data series that it points to
        yAxis: 1,           // the index of yAxis the particular series connects to
      },
    ],
    yAxis: [
      {
        //index 0
        height: "80%",      //height of main series 80%

        resize: {
          enabled: true,     // allow resize of chart heights
        },
      },
      {
        //index 1
        top: "80%",         // oscillator series to begin at 80%
        height: "20%",      //height of oscillator series
      },
    ],

這是我們現(xiàn)在擁有的:
Data Visualization: How to Create Styled Cryptocurrency Candlesticks with Highcharts

設(shè)計(jì)圖表樣式

在開始設(shè)計(jì)圖表樣式之前,我們需要首先了解組成圖表的不同部分。
Data Visualization: How to Create Styled Cryptocurrency Candlesticks with Highcharts
Highcharts 提供了兩種設(shè)計(jì)圖表樣式的方式:

  • Highcharts.CSSObject:這是圖表樣式的默認(rèn)方法。它基于 Highcharts 提供的 stockChart 類中的選項(xiàng)對象構(gòu)建,用于定義圖表中各個(gè) SVG 元素和 HTML 元素的視覺外觀。
  • styledMode: boolean:默認(rèn)為 false。但是,在樣式模式下,不會(huì)通過選項(xiàng)對象將任何表現(xiàn)屬性應(yīng)用于 SVG。因此,需要 CSS 規(guī)則來設(shè)置圖表的樣式。

本文將使用 Highcharts 默認(rèn)樣式。因此,在選項(xiàng)對象內(nèi):

<script src="https://code.highcharts.com/stock/highstock.js"></script>
<script src="https://code.highcharts.com/stock/modules/data.js"></script>
<script src="https://code.highcharts.com/stock/modules/exporting.js"></script>

這就是我們最終的圖表:
Data Visualization: How to Create Styled Cryptocurrency Candlesticks with Highcharts

結(jié)論

使用 Highcharts 創(chuàng)建風(fēng)格化的加密貨幣燭臺,使您可以將原始數(shù)據(jù)轉(zhuǎn)換為視覺上引人注目且可操作的見解。通過利用 Highcharts 的靈活性,您可以自定義蠟燭圖以與您的品牌保持一致,增強(qiáng)用戶體驗(yàn)并有效傳達(dá)市場趨勢。無論您是構(gòu)建財(cái)務(wù)儀表板還是增強(qiáng)交易平臺,設(shè)計(jì)和實(shí)現(xiàn)定制可視化的能力都是當(dāng)今數(shù)據(jù)驅(qū)動(dòng)領(lǐng)域的一項(xiàng)關(guān)鍵技能。

通過本指南中概述的步驟,您現(xiàn)在已經(jīng)具備了使用 Highcharts 創(chuàng)建動(dòng)態(tài)燭臺圖的基礎(chǔ)。探索其他自定義并嘗試使用 Highcharts 的廣泛 API,將您的加密貨幣可視化提升到新的水平。

以上是數(shù)據(jù)可視化:如何使用 Highcharts 創(chuàng)建風(fēng)格化的加密貨幣燭臺的詳細(xì)內(nèi)容。更多信息請關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

本站聲明
本文內(nèi)容由網(wǎng)友自發(fā)貢獻(xiàn),版權(quán)歸原作者所有,本站不承擔(dān)相應(yīng)法律責(zé)任。如您發(fā)現(xiàn)有涉嫌抄襲侵權(quán)的內(nèi)容,請聯(lián)系admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費(fèi)脫衣服圖片

Undresser.AI Undress

Undresser.AI Undress

人工智能驅(qū)動(dòng)的應(yīng)用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用于從照片中去除衣服的在線人工智能工具。

Clothoff.io

Clothoff.io

AI脫衣機(jī)

Video Face Swap

Video Face Swap

使用我們完全免費(fèi)的人工智能換臉工具輕松在任何視頻中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費(fèi)的代碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

功能強(qiáng)大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級代碼編輯軟件(SublimeText3)

Java vs. JavaScript:清除混亂 Java vs. JavaScript:清除混亂 Jun 20, 2025 am 12:27 AM

Java和JavaScript是不同的編程語言,各自適用于不同的應(yīng)用場景。Java用于大型企業(yè)和移動(dòng)應(yīng)用開發(fā),而JavaScript主要用于網(wǎng)頁開發(fā)。

如何在JS中與日期和時(shí)間合作? 如何在JS中與日期和時(shí)間合作? Jul 01, 2025 am 01:27 AM

JavaScript中的日期和時(shí)間處理需注意以下幾點(diǎn):1.創(chuàng)建Date對象有多種方式,推薦使用ISO格式字符串以保證兼容性;2.獲取和設(shè)置時(shí)間信息可用get和set方法,注意月份從0開始;3.手動(dòng)格式化日期需拼接字符串,也可使用第三方庫;4.處理時(shí)區(qū)問題建議使用支持時(shí)區(qū)的庫,如Luxon。掌握這些要點(diǎn)能有效避免常見錯(cuò)誤。

為什么要將標(biāo)簽放在的底部? 為什么要將標(biāo)簽放在的底部? Jul 02, 2025 am 01:22 AM

PlacingtagsatthebottomofablogpostorwebpageservespracticalpurposesforSEO,userexperience,anddesign.1.IthelpswithSEObyallowingsearchenginestoaccesskeyword-relevanttagswithoutclutteringthemaincontent.2.Itimprovesuserexperiencebykeepingthefocusonthearticl

JavaScript與Java:開發(fā)人員的全面比較 JavaScript與Java:開發(fā)人員的全面比較 Jun 20, 2025 am 12:21 AM

JavaScriptIspreferredforredforwebdevelverment,而Javaisbetterforlarge-ScalebackendsystystemsandSandAndRoidApps.1)JavascriptexcelcelsincreatingInteractiveWebexperienceswebexperienceswithitswithitsdynamicnnamicnnamicnnamicnnamicnemicnemicnemicnemicnemicnemicnemicnemicnddommanipulation.2)

什么是在DOM中冒泡和捕獲的事件? 什么是在DOM中冒泡和捕獲的事件? Jul 02, 2025 am 01:19 AM

事件捕獲和冒泡是DOM中事件傳播的兩個(gè)階段,捕獲是從頂層向下到目標(biāo)元素,冒泡是從目標(biāo)元素向上傳播到頂層。1.事件捕獲通過addEventListener的useCapture參數(shù)設(shè)為true實(shí)現(xiàn);2.事件冒泡是默認(rèn)行為,useCapture設(shè)為false或省略;3.可使用event.stopPropagation()阻止事件傳播;4.冒泡支持事件委托,提高動(dòng)態(tài)內(nèi)容處理效率;5.捕獲可用于提前攔截事件,如日志記錄或錯(cuò)誤處理。了解這兩個(gè)階段有助于精確控制JavaScript響應(yīng)用戶操作的時(shí)機(jī)和方式。

JavaScript:探索用于高效編碼的數(shù)據(jù)類型 JavaScript:探索用于高效編碼的數(shù)據(jù)類型 Jun 20, 2025 am 12:46 AM

javascripthassevenfundaMentalDatatypes:數(shù)字,弦,布爾值,未定義,null,object和symbol.1)numberSeadUble-eaduble-ecisionFormat,forwidevaluerangesbutbecautious.2)

如何減少JavaScript應(yīng)用程序的有效載荷大??? 如何減少JavaScript應(yīng)用程序的有效載荷大??? Jun 26, 2025 am 12:54 AM

如果JavaScript應(yīng)用加載慢、性能差,問題往往出在payload太大,解決方法包括:1.使用代碼拆分(CodeSplitting),通過React.lazy()或構(gòu)建工具將大bundle拆分為多個(gè)小文件,按需加載以減少首次下載量;2.移除未使用的代碼(TreeShaking),利用ES6模塊機(jī)制清除“死代碼”,確保引入的庫支持該特性;3.壓縮和合并資源文件,啟用Gzip/Brotli和Terser壓縮JS,合理合并文件并優(yōu)化靜態(tài)資源;4.替換重型依賴,選用輕量級庫如day.js、fetch

JavaScript模塊上的確定JS綜述:ES模塊與COMPORJS JavaScript模塊上的確定JS綜述:ES模塊與COMPORJS Jul 02, 2025 am 01:28 AM

ES模塊和CommonJS的主要區(qū)別在于加載方式和使用場景。1.CommonJS是同步加載,適用于Node.js服務(wù)器端環(huán)境;2.ES模塊是異步加載,適用于瀏覽器等網(wǎng)絡(luò)環(huán)境;3.語法上,ES模塊使用import/export,且必須位于頂層作用域,而CommonJS使用require/module.exports,可在運(yùn)行時(shí)動(dòng)態(tài)調(diào)用;4.CommonJS廣泛用于舊版Node.js及依賴它的庫如Express,ES模塊則適用于現(xiàn)代前端框架和Node.jsv14 ;5.雖然可混合使用,但容易引發(fā)問題

See all articles