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

目錄
鑰匙要點(diǎn)
角2 vs Angular 1.x
創(chuàng)建圖表
請(qǐng)注意添加事件偵聽(tīng)器并在Angular 2中添加NGCLASS指令的新語(yǔ)法。它們幾乎與Angular 1相同,沒(méi)有一些括號(hào)和括號(hào)。
>您可以在Plunker上查看此演示的代碼。或者,您可以從我們的GitHub存儲(chǔ)庫(kù)中下載代碼。
經(jīng)常詢(xún)問(wèn)有關(guān)Angular2 FusionCharts中圖表組件的問(wèn)題
>如何在Angular2?
是的,F(xiàn)usionCharts與Angular Cli兼容。通過(guò)NPM安裝FusionCharts和Angular FusionCharts之后,您可以將它們導(dǎo)入到Angular CLI項(xiàng)目中。請(qǐng)記住將FusionChartSmodule添加到您的ngmodule導(dǎo)入數(shù)組中。
中的FusionCharts創(chuàng)建基本圖表來(lái)創(chuàng)建基本圖表來(lái)創(chuàng)建基本圖表,您需要首先定義圖表配置中的圖表配置。成分。這包括圖表類(lèi)型,數(shù)據(jù)源和其他選項(xiàng)。然后,使用模板中的FusionCharts組件呈現(xiàn)圖表。您可以通過(guò)修改圖表配置來(lái)自定義圖表。
>如何導(dǎo)出我的FusionCharts圖表?您可以將圖表導(dǎo)出為圖像,PDF或SVG。要啟用導(dǎo)出,您需要將導(dǎo)出選項(xiàng)設(shè)置為圖表配置中的true。
首頁(yè) web前端 js教程 用Angular 2和FusionCharts構(gòu)建圖表組件

用Angular 2和FusionCharts構(gòu)建圖表組件

Feb 17, 2025 pm 12:51 PM

用Angular 2和FusionCharts構(gòu)建圖表組件

鑰匙要點(diǎn)

  • >利用Angular 2用于建筑圖表組件,利用其在Angular 1.X上的改進(jìn),包括增強(qiáng)的語(yǔ)言支持和DOM管理。
  • >通過(guò)直接與JavaScript進(jìn)行編碼,將FusionCharts與Angular 2與Angular 2集成,以創(chuàng)建視覺(jué)吸引人的圖表。
  • >開(kāi)發(fā)一個(gè)動(dòng)態(tài)圖表組件,能夠在數(shù)據(jù)集之間切換(例如,2014年和2015年的主要科技公司的收入統(tǒng)計(jì)數(shù)據(jù)),增強(qiáng)交互性和用戶(hù)參與度。
  • >
  • >使用FusionCharts的注釋功能來(lái)自定義圖表,例如將公司徽標(biāo)添加到圖表軸上,該徽標(biāo)提供了量身定制的視覺(jué)體驗(yàn)。
  • >探索與Angular 2和FusionCharts的進(jìn)一步功能和集成可能性,鼓勵(lì)讀者在基本圖表組件上擴(kuò)展具有更復(fù)雜的配置和圖表類(lèi)型的基本圖表組件。
  • >
  • 本文是由Vildan Softic審查的。感謝SitePoint所有的同行評(píng)審員制作SitePoint內(nèi)容的最佳狀態(tài)!
>作為Web開(kāi)發(fā)人員,如果您不能錯(cuò)過(guò)的東西,那就是Angular 2。它是Google受歡迎的JavaScript框架的完整重寫(xiě),并且出于所有正確的原因,它一直在新聞中。它比以前的版本提供了一些重大改進(jìn),這就是為什么我們今天選擇它來(lái)構(gòu)建一些漂亮的圖表。

對(duì)于圖表,我們將使用FusionCharts提供的JavaScript圖表庫(kù)。它提供了良好的圖表集合,并且與所有主要瀏覽器兼容。盡管FusionCharts為Angular提供了專(zhuān)用插件,但它尚未與Angular 2兼容。因此,我不會(huì)使用它,而是使用JavaScript和Angular 2直接使用它代碼。您在應(yīng)用程序中使用了Angular 1。 我們要繪圖的圖表將描述一個(gè)有趣的統(tǒng)計(jì)數(shù)據(jù) - 五家頂級(jí)科技公司(亞馬遜,蘋(píng)果,F(xiàn)acebook,Google,Google和Microsoft)的收入,并將可以選擇在2014年和2015年的收入數(shù)據(jù)之間切換。將首先通過(guò)Angular 2中創(chuàng)建圖表的分步過(guò)程。構(gòu)建基本圖表后,我們將介紹一些高級(jí)主題,例如添加注釋和更新圖表數(shù)據(jù)。 >一如既往,您可以從我們的GitHub repo下載本教程的代碼,也可以在文章末尾跳到完成圖表的演示。

>

角2 vs Angular 1.x

> Angular 2比以前的主要版本(Angular 1.x)有一些重大變化,例如其對(duì)Typescript和Dart等語(yǔ)言的支持,以及它計(jì)算到DOM的更新方式。如果您想了解有關(guān)Angular 1概念和技術(shù)如何映射到Angular 2的更多信息,則可以查看官方快速參考。如果您有興趣將應(yīng)用程序從Angular 1.X遷移到Angular 2,則可以閱讀官方遷移指南。

> Angular 2支持打字稿和DART,但由于其熟悉程度,我們將使用本機(jī)JavaScript在本教程中編寫(xiě)Angular 2應(yīng)用程序。使用Typescript或Dart也將引入不必要的構(gòu)建步驟。

>

>設(shè)置

有很多方法可以使用Angular 2項(xiàng)目啟動(dòng)和運(yùn)行。最簡(jiǎn)單的可能是前往官方網(wǎng)站并遵循其5分鐘的Quickstart教程。

>對(duì)這種方法的一個(gè)小警告是,它依賴(lài)于您在計(jì)算機(jī)上安裝了節(jié)點(diǎn)和NPM。我們確實(shí)為此提供了指南,但是如果您希望在不安裝這些教程的情況下遵循本教程,則可以使用以下模板:>

創(chuàng)建圖表組件

組件是任何Angular 2應(yīng)用程序的構(gòu)件。它們是可重復(fù)使用的代碼,包括視圖和一些邏輯。如果您熟悉Angular 1,則可以將它們視為帶有模板和控制器的指令。
<span><span><!DOCTYPE html></span>
</span><span><span><span><html</span> lang<span>="en"</span>></span>
</span>  <span><span><span><head</span>></span>
</span>    <span><span><span><meta</span> charset<span>="UTF-8"</span>></span>
</span>    <span><span><span><title</span>></span>Angular 2 FusionCharts Demo<span><span></title</span>></span>
</span>
    <span><!-- 1. Load custom CSS & fonts-->
</span>    <span><span><span><link</span> rel<span>="stylesheet"</span> href<span>="styles.css"</span>></span>
</span>    <span><span><span><link</span> href<span>='https://fonts.googleapis.com/css?family=Source+Sans+Pro:300'</span> rel<span>='stylesheet'</span>></span>
</span>
    <span><!-- 2. Load Angular 2 specific libraries -->
</span>    <span><span><span><script</span> src<span>="https://code.angularjs.org/2.0.0-beta.17/angular2-polyfills.js"</span>></span><span><span></script</span>></span>
</span>    <span><span><span><script</span> src<span>="https://code.angularjs.org/2.0.0-beta.17/Rx.umd.js"</span>></span><span><span></script</span>></span>
</span>    <span><span><span><script</span> src<span>="https://code.angularjs.org/2.0.0-beta.17/angular2-all.umd.dev.js"</span>></span><span><span></script</span>></span>
</span>
    <span><!-- 3. Load FusionCharts library-->
</span>    <span><span><span><script</span> src<span>="https://static.fusioncharts.com/code/latest/fusioncharts.js"</span>></span><span><span></script</span>></span>
</span>
    <span><!-- 4. Load component -->
</span>    <span><span><span><script</span> src<span>='main.js'</span>></span><span><span></script</span>></span>
</span>  <span><span><span></head</span>></span>
</span>  <span><span><span><body</span>></span>
</span>
    <span><!-- 5. Display the application -->
</span>    <span><span><span><angular-chart</span>></span>Loading...<span><span></angular-chart</span>></span>
</span>  <span><span><span></body</span>></span>
</span><span><span><span></html</span>></span>
</span>
以下是我們圖表組件的基礎(chǔ):

>讓我們一秒鐘看看發(fā)生了什么。

>

>我們從使用IIFE(立即調(diào)用函數(shù)表達(dá)式)開(kāi)始,我們用來(lái)命名應(yīng)用程序空間。我們將其傳遞窗口。Chartapp作為一個(gè)參數(shù),如果未定義,則將其初始化為空對(duì)象。這是我們的應(yīng)用程序?qū)⒁幼〉牡胤?- 在全局對(duì)象上的單個(gè)屬性中。 在IIFE內(nèi)部,我們通過(guò)將組件和類(lèi)方法從NG.Core(Angular的核心組件集合)鏈接來(lái)創(chuàng)建我們的組件(AppComponent)。我們正在傳遞組件方法一個(gè)配置對(duì)象,該對(duì)象包含以下propeties:>

<span>(function(chartApp){
</span>  chartApp<span>.<span>AppComponent</span> = ng.core.<span>Component</span>({
</span>    <span>selector: 'angular-chart',
</span>    <span>template: '<div>Chart will render here</div>'
</span>  <span>}).<span>Class</span>({
</span>    <span>constructor: function(){}
</span>  <span>});
</span>
  <span>document.addEventListener('DOMContentLoaded', function() {
</span>    ng<span>.platform.browser.bootstrap(chartApp.<span>AppComponent</span>);
</span>  <span>});
</span><span>})(window.chartApp || (window.chartApp = {}));
</span>

選擇器:一個(gè)簡(jiǎn)單的CSS選擇器,該選擇器指定主機(jī)HTML元素。 Angular將在遇到與此選擇器匹配的HTML元素時(shí)創(chuàng)建并顯示組件的實(shí)例。

>

>模板:渲染組件時(shí)要使用的模板。目前,我們正在傳遞一個(gè)包含占位符

元素的字符串,但理想情況下,我們應(yīng)該將其移至其自己的模板中。

類(lèi)方法是我們?cè)谄渲刑砑幽0宓男袨楹褪录壎ā?ancy>>

定義了我們的基本組件,我們使用Angular的瀏覽器bootstrap函數(shù)初始化它。
  • >您應(yīng)該能夠在此時(shí)在瀏覽器中運(yùn)行代碼,并查看消息“圖表將在此處呈現(xiàn)”。

    創(chuàng)建圖表

    >讓我們繼續(xù)創(chuàng)建圖表并顯示2014年的一些數(shù)據(jù)。 為此

    類(lèi)型:我們希望創(chuàng)建

    的圖表類(lèi)型
      renderat:將我們的圖表渲染到
    • >的DOM選擇器
    • 寬度和高度:圖表尺寸
    • ID:生成圖表的ID
    • >
    • dataformat:傳遞到數(shù)據(jù)源選項(xiàng)的數(shù)據(jù)格式>
    • > dataSource:實(shí)際圖表的配置以及它應(yīng)該顯示的數(shù)據(jù)
    • 這是完整的配置文件。
    • >不確定任何圖表選項(xiàng)實(shí)際上要做什么,或者您想找出如何配置圖表的外觀(guān),則可以參考FusionCharts文檔中的“圖表屬性”頁(yè)面。
    <span><span><!DOCTYPE html></span>
    </span><span><span><span><html</span> lang<span>="en"</span>></span>
    </span>  <span><span><span><head</span>></span>
    </span>    <span><span><span><meta</span> charset<span>="UTF-8"</span>></span>
    </span>    <span><span><span><title</span>></span>Angular 2 FusionCharts Demo<span><span></title</span>></span>
    </span>
        <span><!-- 1. Load custom CSS & fonts-->
    </span>    <span><span><span><link</span> rel<span>="stylesheet"</span> href<span>="styles.css"</span>></span>
    </span>    <span><span><span><link</span> href<span>='https://fonts.googleapis.com/css?family=Source+Sans+Pro:300'</span> rel<span>='stylesheet'</span>></span>
    </span>
        <span><!-- 2. Load Angular 2 specific libraries -->
    </span>    <span><span><span><script</span> src<span>="https://code.angularjs.org/2.0.0-beta.17/angular2-polyfills.js"</span>></span><span><span></script</span>></span>
    </span>    <span><span><span><script</span> src<span>="https://code.angularjs.org/2.0.0-beta.17/Rx.umd.js"</span>></span><span><span></script</span>></span>
    </span>    <span><span><span><script</span> src<span>="https://code.angularjs.org/2.0.0-beta.17/angular2-all.umd.dev.js"</span>></span><span><span></script</span>></span>
    </span>
        <span><!-- 3. Load FusionCharts library-->
    </span>    <span><span><span><script</span> src<span>="https://static.fusioncharts.com/code/latest/fusioncharts.js"</span>></span><span><span></script</span>></span>
    </span>
        <span><!-- 4. Load component -->
    </span>    <span><span><span><script</span> src<span>='main.js'</span>></span><span><span></script</span>></span>
    </span>  <span><span><span></head</span>></span>
    </span>  <span><span><span><body</span>></span>
    </span>
        <span><!-- 5. Display the application -->
    </span>    <span><span><span><angular-chart</span>></span>Loading...<span><span></angular-chart</span>></span>
    </span>  <span><span><span></body</span>></span>
    </span><span><span><span></html</span>></span>
    </span>
    >我們要做的另一件事是更新模板以包括我們的圖表應(yīng)呈現(xiàn)的容器。您可以通過(guò)將字符串指定到組件的模板屬性(如我們之前所做的),或者通過(guò)將模板移動(dòng)到自己的文件中并使用TemplateUrl。

    無(wú)論哪種方式,這都是我們的模板的樣子。

    >

    這是我們到目前為止所擁有的演示:

    >
    <span>(function(chartApp){
    </span>  chartApp<span>.<span>AppComponent</span> = ng.core.<span>Component</span>({
    </span>    <span>selector: 'angular-chart',
    </span>    <span>template: '<div>Chart will render here</div>'
    </span>  <span>}).<span>Class</span>({
    </span>    <span>constructor: function(){}
    </span>  <span>});
    </span>
      <span>document.addEventListener('DOMContentLoaded', function() {
    </span>    ng<span>.platform.browser.bootstrap(chartApp.<span>AppComponent</span>);
    </span>  <span>});
    </span><span>})(window.chartApp || (window.chartApp = {}));
    </span>
    加載plunk…

    >您可以在Plunker上查看此演示的代碼。
    <span>new FusionCharts({
    </span>  <span>"type": "column2d",
    </span>  <span>"renderAt": "chart-container",
    </span>  <span>"width": "550",
    </span>  <span>"height": "400",
    </span>  <span>"id": "revenue-chart",
    </span>  <span>"dataFormat": "json",
    </span>  <span>"dataSource": {
    </span>    <span>"chart": {
    </span>      <span>"yAxisName": "Revenue (In USD Billion)",
    </span>      <span>"yAxisMaxValue": "200",
    </span>      <span>...
    </span>    <span>},
    </span>    <span>"data": [{
    </span>      <span>"label": "Amazon",
    </span>      <span>"value": "88.99"
    </span>    <span>}, {
    </span>      <span>"label": "Apple",
    </span>      <span>"value": "182.8"
    </span>    <span>}
    </span>    <span>...
    </span>    <span>]
    </span>  <span>}
    </span><span>});
    </span>

    如果您單擊plunker上的演示,則在文件main.js中,您可能會(huì)注意到我們已經(jīng)將FusionCharts配置數(shù)據(jù)分開(kāi)為自己的文件,然后我們使用Angular的HTTP類(lèi)來(lái)獲取。這是為了清楚起見(jiàn)(它使角度特定的代碼易于遵循),也是因?yàn)樵诂F(xiàn)實(shí)生活中,請(qǐng)求數(shù)據(jù)請(qǐng)求是您通常會(huì)在現(xiàn)實(shí)生活中所做的。

    > 但是,這不是絕對(duì)必要的,您會(huì)通過(guò)直接在ChartApp構(gòu)造函數(shù)中執(zhí)行所有操作來(lái)獲得相同的結(jié)果:

    >唯一要提及的是,初始化代碼包裹在FusionCharts.ready方法中。在加載FusionCharts庫(kù)之前,此圖表實(shí)例化代碼不受調(diào)用。

    >

    >準(zhǔn)備好基本圖表,現(xiàn)在是時(shí)候添加更多功能了,例如使用公司徽標(biāo)而不是名稱(chēng)并使用2015年的新數(shù)據(jù)更新圖表。

    >

    添加注釋

    chartApp<span>.<span>AppComponent</span> = ng.core.<span>Component</span>({
    </span>  <span>selector: 'angular-chart',
    </span>  <span>templateUrl: 'chart.html'
    </span><span>}).<span>Class</span>({
    </span>  <span>...
    </span><span>});
    </span>
    >為了將公司徽標(biāo)添加到X軸上,我們將使用FusionCharts強(qiáng)大的功能之一 -

    注釋

    。 FusionCharts對(duì)象上的注釋允許您在圖表上指定的位置繪制自定義形狀或圖像。

    >假設(shè)您想在圖表中心添加公司徽標(biāo)。您可以使用注釋和宏來(lái)進(jìn)行。宏將為您提供圖表中心的坐標(biāo),注釋將使您在該位置添加圖像。 當(dāng)您使用動(dòng)態(tài)注釋以例如獲取取決于圖表數(shù)據(jù)的位置的信息時(shí),事情會(huì)變得有趣。想象一下,您想精確地繪制列結(jié)束的位置。您可以使用動(dòng)態(tài)注釋宏$ dataset.0.set.1.Endx和$ dataset.0.set.1.endy確定列端點(diǎn)的x和y坐標(biāo),然后在那里繪制一些東西。您可以在此FusionCharts文檔頁(yè)面上了解有關(guān)注釋以及如何使用它們的更多信息。

    >

    對(duì)于我們的圖表,我們將使用動(dòng)態(tài)注釋宏來(lái)獲取每一列的啟動(dòng)和結(jié)束坐標(biāo),然后我們將繪制各自的公司徽標(biāo)。我們還將使用圖表屬性“ ShowLabels”:“ 0”。 為了實(shí)現(xiàn)上述目標(biāo),請(qǐng)將以下代碼添加到圖表的配置:>

    在上面的代碼中:

    >類(lèi)型正在設(shè)置注釋的類(lèi)型。
    <span><span><!DOCTYPE html></span>
    </span><span><span><span><html</span> lang<span>="en"</span>></span>
    </span>  <span><span><span><head</span>></span>
    </span>    <span><span><span><meta</span> charset<span>="UTF-8"</span>></span>
    </span>    <span><span><span><title</span>></span>Angular 2 FusionCharts Demo<span><span></title</span>></span>
    </span>
        <span><!-- 1. Load custom CSS & fonts-->
    </span>    <span><span><span><link</span> rel<span>="stylesheet"</span> href<span>="styles.css"</span>></span>
    </span>    <span><span><span><link</span> href<span>='https://fonts.googleapis.com/css?family=Source+Sans+Pro:300'</span> rel<span>='stylesheet'</span>></span>
    </span>
        <span><!-- 2. Load Angular 2 specific libraries -->
    </span>    <span><span><span><script</span> src<span>="https://code.angularjs.org/2.0.0-beta.17/angular2-polyfills.js"</span>></span><span><span></script</span>></span>
    </span>    <span><span><span><script</span> src<span>="https://code.angularjs.org/2.0.0-beta.17/Rx.umd.js"</span>></span><span><span></script</span>></span>
    </span>    <span><span><span><script</span> src<span>="https://code.angularjs.org/2.0.0-beta.17/angular2-all.umd.dev.js"</span>></span><span><span></script</span>></span>
    </span>
        <span><!-- 3. Load FusionCharts library-->
    </span>    <span><span><span><script</span> src<span>="https://static.fusioncharts.com/code/latest/fusioncharts.js"</span>></span><span><span></script</span>></span>
    </span>
        <span><!-- 4. Load component -->
    </span>    <span><span><span><script</span> src<span>='main.js'</span>></span><span><span></script</span>></span>
    </span>  <span><span><span></head</span>></span>
    </span>  <span><span><span><body</span>></span>
    </span>
        <span><!-- 5. Display the application -->
    </span>    <span><span><span><angular-chart</span>></span>Loading...<span><span></angular-chart</span>></span>
    </span>  <span><span><span></body</span>></span>
    </span><span><span><span></html</span>></span>
    </span>

    URL正在設(shè)置圖像的地址。

    >
      x和y正在設(shè)置圖像的啟動(dòng)x和y坐標(biāo)。
    • >
    • 添加上述代碼后,您應(yīng)該在X軸上看到公司徽標(biāo)。要了解有關(guān)使用注釋以及其他可能的更多信息,請(qǐng)參閱文檔頁(yè)面(如上所述)。
    • >
    • >在數(shù)據(jù)集之間切換
    我們要實(shí)施的最后一件事是允許用戶(hù)在幾年之間切換,根據(jù)所選年份(2014或2015年)查看其他數(shù)據(jù)集。

    構(gòu)建數(shù)據(jù)。

    因此,我們需要考慮如何以一種可以在不同年份定義不同數(shù)據(jù)集的方式構(gòu)建數(shù)據(jù)。如前所述,F(xiàn)usionCharts期望配置選項(xiàng)包含數(shù)據(jù)屬性,該選項(xiàng)應(yīng)該是包含一組標(biāo)簽/值對(duì)的數(shù)組。

    >處理多個(gè)數(shù)據(jù)集的一種方法是定義構(gòu)造函數(shù)頂部的數(shù)據(jù)集對(duì)象,并使用別名將其連接到構(gòu)造函數(shù)。

    >

    然后,在配置選項(xiàng)中,我們將其傳遞給FusionCharts構(gòu)造函數(shù),我們可以做:>

    >更新切換上的圖表數(shù)據(jù)

    >我們還希望將圖表與2015年的數(shù)據(jù)一起更新,一旦有人單擊 2015
    <span>(function(chartApp){
    </span>  chartApp<span>.<span>AppComponent</span> = ng.core.<span>Component</span>({
    </span>    <span>selector: 'angular-chart',
    </span>    <span>template: '<div>Chart will render here</div>'
    </span>  <span>}).<span>Class</span>({
    </span>    <span>constructor: function(){}
    </span>  <span>});
    </span>
      <span>document.addEventListener('DOMContentLoaded', function() {
    </span>    ng<span>.platform.browser.bootstrap(chartApp.<span>AppComponent</span>);
    </span>  <span>});
    </span><span>})(window.chartApp || (window.chartApp = {}));
    </span>
    >按鈕,然后切換回顯示2014年的數(shù)據(jù),當(dāng)

    > 2014

    按鈕單擊時(shí)。
    <span>new FusionCharts({
    </span>  <span>"type": "column2d",
    </span>  <span>"renderAt": "chart-container",
    </span>  <span>"width": "550",
    </span>  <span>"height": "400",
    </span>  <span>"id": "revenue-chart",
    </span>  <span>"dataFormat": "json",
    </span>  <span>"dataSource": {
    </span>    <span>"chart": {
    </span>      <span>"yAxisName": "Revenue (In USD Billion)",
    </span>      <span>"yAxisMaxValue": "200",
    </span>      <span>...
    </span>    <span>},
    </span>    <span>"data": [{
    </span>      <span>"label": "Amazon",
    </span>      <span>"value": "88.99"
    </span>    <span>}, {
    </span>      <span>"label": "Apple",
    </span>      <span>"value": "182.8"
    </span>    <span>}
    </span>    <span>...
    </span>    <span>]
    </span>  <span>}
    </span><span>});
    </span>

    >讓我們添加兩個(gè)按鈕,該按鈕將用于執(zhí)行此操作并給他們一些樣式。修改組件模板如下:

    >
    chartApp<span>.<span>AppComponent</span> = ng.core.<span>Component</span>({
    </span>  <span>selector: 'angular-chart',
    </span>  <span>templateUrl: 'chart.html'
    </span><span>}).<span>Class</span>({
    </span>  <span>...
    </span><span>});
    </span>

    請(qǐng)注意添加事件偵聽(tīng)器并在Angular 2中添加NGCLASS指令的新語(yǔ)法。它們幾乎與Angular 1相同,沒(méi)有一些括號(hào)和括號(hào)。

    >我已經(jīng)添加了NGCLASS指令,以通過(guò)將選定的CSS類(lèi)應(yīng)用于按鈕元素來(lái)突出顯示當(dāng)前所選年。這是基于組件上的SelectedYear屬性,該屬性在單擊按鈕上更新。

    >我們可以將當(dāng)前選定的年度設(shè)置為2014年,當(dāng)組件通過(guò)將以下行添加到構(gòu)造函數(shù)的頂部呈現(xiàn):

    >

    <span><span><!DOCTYPE html></span>
    </span><span><span><span><html</span> lang<span>="en"</span>></span>
    </span>  <span><span><span><head</span>></span>
    </span>    <span><span><span><meta</span> charset<span>="UTF-8"</span>></span>
    </span>    <span><span><span><title</span>></span>Angular 2 FusionCharts Demo<span><span></title</span>></span>
    </span>
        <span><!-- 1. Load custom CSS & fonts-->
    </span>    <span><span><span><link</span> rel<span>="stylesheet"</span> href<span>="styles.css"</span>></span>
    </span>    <span><span><span><link</span> href<span>='https://fonts.googleapis.com/css?family=Source+Sans+Pro:300'</span> rel<span>='stylesheet'</span>></span>
    </span>
        <span><!-- 2. Load Angular 2 specific libraries -->
    </span>    <span><span><span><script</span> src<span>="https://code.angularjs.org/2.0.0-beta.17/angular2-polyfills.js"</span>></span><span><span></script</span>></span>
    </span>    <span><span><span><script</span> src<span>="https://code.angularjs.org/2.0.0-beta.17/Rx.umd.js"</span>></span><span><span></script</span>></span>
    </span>    <span><span><span><script</span> src<span>="https://code.angularjs.org/2.0.0-beta.17/angular2-all.umd.dev.js"</span>></span><span><span></script</span>></span>
    </span>
        <span><!-- 3. Load FusionCharts library-->
    </span>    <span><span><span><script</span> src<span>="https://static.fusioncharts.com/code/latest/fusioncharts.js"</span>></span><span><span></script</span>></span>
    </span>
        <span><!-- 4. Load component -->
    </span>    <span><span><span><script</span> src<span>='main.js'</span>></span><span><span></script</span>></span>
    </span>  <span><span><span></head</span>></span>
    </span>  <span><span><span><body</span>></span>
    </span>
        <span><!-- 5. Display the application -->
    </span>    <span><span><span><angular-chart</span>></span>Loading...<span><span></angular-chart</span>></span>
    </span>  <span><span><span></body</span>></span>
    </span><span><span><span></html</span>></span>
    </span>
    處理按鈕點(diǎn)擊的邏輯將添加到新的年齡函數(shù)中。

    為此,我們將使用FusionChart的SetChartData方法,該方法既需要圖表配置選項(xiàng)和實(shí)際圖表數(shù)據(jù)。我們將使用getChartData方法從已經(jīng)渲染的圖表中獲取圖表屬性,而不是先存儲(chǔ)圖表屬性,然后引用它們,并使用getChartData方法并使用特定年份的數(shù)據(jù)來(lái)修改該數(shù)據(jù)。

    在為按鈕添加HTML和上述點(diǎn)擊處理程序后,單擊這些按鈕應(yīng)加載該年的數(shù)據(jù)。
    <span>(function(chartApp){
    </span>  chartApp<span>.<span>AppComponent</span> = ng.core.<span>Component</span>({
    </span>    <span>selector: 'angular-chart',
    </span>    <span>template: '<div>Chart will render here</div>'
    </span>  <span>}).<span>Class</span>({
    </span>    <span>constructor: function(){}
    </span>  <span>});
    </span>
      <span>document.addEventListener('DOMContentLoaded', function() {
    </span>    ng<span>.platform.browser.bootstrap(chartApp.<span>AppComponent</span>);
    </span>  <span>});
    </span><span>})(window.chartApp || (window.chartApp = {}));
    </span>
    demo

    這是最后的演示。
    <span>new FusionCharts({
    </span>  <span>"type": "column2d",
    </span>  <span>"renderAt": "chart-container",
    </span>  <span>"width": "550",
    </span>  <span>"height": "400",
    </span>  <span>"id": "revenue-chart",
    </span>  <span>"dataFormat": "json",
    </span>  <span>"dataSource": {
    </span>    <span>"chart": {
    </span>      <span>"yAxisName": "Revenue (In USD Billion)",
    </span>      <span>"yAxisMaxValue": "200",
    </span>      <span>...
    </span>    <span>},
    </span>    <span>"data": [{
    </span>      <span>"label": "Amazon",
    </span>      <span>"value": "88.99"
    </span>    <span>}, {
    </span>      <span>"label": "Apple",
    </span>      <span>"value": "182.8"
    </span>    <span>}
    </span>    <span>...
    </span>    <span>]
    </span>  <span>}
    </span><span>});
    </span>
    >

    加載plunk…

    >您可以在Plunker上查看此演示的代碼?;蛘?,您可以從我們的GitHub存儲(chǔ)庫(kù)中下載代碼。

    >

    >如果您單擊“ plunker”,您會(huì)發(fā)現(xiàn)我們已直接在config.json文件中定義了數(shù)據(jù)集屬性。這使我們的組件變得更加整潔。

    >我們首先構(gòu)建一個(gè)簡(jiǎn)單的角圖,然后繼續(xù)使用注釋和其他FusionCharts的API為其添加更多功能。但這只是冰山一角,使用Angular 2和FusionCharts可以完成更多。您可以自己探索的某些事情:

    >

    包括更多圖表:列圖并不總是表示數(shù)據(jù)集的最佳方法。根據(jù)您的用例,您可能需要使用不同的圖表,例如瀑布,雷達(dá),規(guī)格等。因此,請(qǐng)嘗試使用本教程中解釋的過(guò)程來(lái)繪制其他圖表,看看您是否能夠成功完成。 >

    >

    在您的應(yīng)用程序中包括圖表:如果您要制作混合移動(dòng)應(yīng)用程序,那么您必須意識(shí)到Ionic 2(最新版本的Ionic)基于Angular 2。這是一個(gè)好消息,因?yàn)槟梢允褂帽窘坛桃彩菫槟碾x子應(yīng)用程序創(chuàng)建圖表的基礎(chǔ)。

      >
    • 探索更多事件:在本教程中,我解釋了如何使用setChartdata方法,但是您可以使用更多的事件和方法來(lái)增強(qiáng)應(yīng)用程序的用戶(hù)體驗(yàn)。查看上面的鏈接頁(yè)面,以了解有關(guān)FusionCharts提供的各種事件和方法的更多信息。

    >如果您在嘗試自己制作圖表時(shí)遇到任何困難,請(qǐng)參閱Angular或FusionCharts的文檔(取決于問(wèn)題),或者在下面發(fā)表評(píng)論。我會(huì)很樂(lè)意提供幫助!

    經(jīng)常詢(xún)問(wèn)有關(guān)Angular2 FusionCharts中圖表組件的問(wèn)題

    >如何在Angular2?

    中安裝FusionCharts以在Angular2中安裝FusionCharts,您需要首先通過(guò)NPM安裝FusionCharts和Angular FusionCharts。在終端中使用以下命令:>安裝后,Import FusionCharts和Angular FusionCharts進(jìn)入組件文件。然后,將fusionChartSmodule添加到您的ngmodule導(dǎo)入陣列中。

    我可以使用具有角cli的融合式,

    是的,F(xiàn)usionCharts與Angular Cli兼容。通過(guò)NPM安裝FusionCharts和Angular FusionCharts之后,您可以將它們導(dǎo)入到Angular CLI項(xiàng)目中。請(qǐng)記住將FusionChartSmodule添加到您的ngmodule導(dǎo)入數(shù)組中。

    如何使用angular2?

    中的FusionCharts創(chuàng)建基本圖表來(lái)創(chuàng)建基本圖表來(lái)創(chuàng)建基本圖表,您需要首先定義圖表配置中的圖表配置。成分。這包括圖表類(lèi)型,數(shù)據(jù)源和其他選項(xiàng)。然后,使用模板中的FusionCharts組件呈現(xiàn)圖表。您可以通過(guò)修改圖表配置來(lái)自定義圖表。

    >我可以使用fusionCharts在Angular2?

    FusionCharts中使用哪些類(lèi)型的圖表來(lái)支持各種圖表類(lèi)型,包括線(xiàn)條,bar,bar,bar,pie ,區(qū)域,甜甜圈等。您還可以創(chuàng)建高級(jí)圖表,例如組合圖表,Zoomline圖表和Treemaps。每種圖表類(lèi)型都有其自己的配置選項(xiàng),您可以自定義以適合您的需求。

    >如何更新FusionCharts圖表中的數(shù)據(jù)?

    以更新圖表中的數(shù)據(jù),需要修改圖表配置中的數(shù)據(jù)源。當(dāng)數(shù)據(jù)源更改時(shí),F(xiàn)usionCharts將自動(dòng)更新圖表。您還可以使用setJsondata或setChartdata方法來(lái)編程更新數(shù)據(jù)。

    我可以將fusionCharts與typescript 2中的fusionCharts一起使用?您可以將FusionCharts和Angular FusionCharts導(dǎo)入打字稿文件中,并像常規(guī)的JavaScript文件中一樣使用它們。

    >如何處理Angular2中的fusionCharts中的事件2?您可以收聽(tīng)的事件,例如DataPlotClick,ChartClick和Beforerender。要處理這些事件,您需要在組件中定義事件處理程序,并將其綁定到模板中的FusionCharts組件中。

    >我可以自定義FusionCharts Chart的外觀(guān)嗎? FusionCharts提供了廣泛的自定義選項(xiàng)。您可以自定義顏色,字體,邊框,背景等。這些選項(xiàng)可以在圖表配置中設(shè)置。

    >如何導(dǎo)出我的FusionCharts圖表?您可以將圖表導(dǎo)出為圖像,PDF或SVG。要啟用導(dǎo)出,您需要將導(dǎo)出選項(xiàng)設(shè)置為圖表配置中的true。

    >如何通過(guò)FusionCharts圖表進(jìn)行調(diào)試問(wèn)題?

    FusionCharts提供了調(diào)試模式,可登錄有關(guān)詳細(xì)信息的詳細(xì)信息圖表渲染過(guò)程。要啟用調(diào)試模式,請(qǐng)?jiān)趫D表配置中將DebugMode選項(xiàng)設(shè)置為true。然后,您可以在瀏覽器的控制臺(tái)中查看日志。

以上是用Angular 2和FusionCharts構(gòu)建圖表組件的詳細(xì)內(nèi)容。更多信息請(qǐng)關(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)容,請(qǐng)聯(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

用于從照片中去除衣服的在線(xiàn)人工智能工具。

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集成開(kāi)發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺(jué)化網(wǎng)頁(yè)開(kāi)發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級(jí)代碼編輯軟件(SublimeText3)

熱門(mén)話(huà)題

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

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

JavaScript評(píng)論:簡(jiǎn)短說(shuō)明 JavaScript評(píng)論:簡(jiǎn)短說(shuō)明 Jun 19, 2025 am 12:40 AM

JavascriptconcommentsenceenceEncorenceEnterential gransimenting,reading and guidingCodeeXecution.1)單inecommentsareusedforquickexplanations.2)多l(xiāng)inecommentsexplaincomplexlogicorprovideDocumentation.3)

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

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

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

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

JavaScript與Java:開(kāi)發(fā)人員的全面比較 JavaScript與Java:開(kāi)發(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.事件捕獲通過(guò)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)用戶(hù)操作的時(shí)機(jī)和方式。

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

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

如何減少JavaScript應(yīng)用程序的有效載荷大?。? />
								</a>
								<a href=如何減少JavaScript應(yīng)用程序的有效載荷大小? Jun 26, 2025 am 12:54 AM

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

See all articles