Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 精品三级国产一区二区三区四区 ,国产欧美中文字幕,亚洲国产成人久久午夜

          整合營銷服務(wù)商

          電腦端+手機(jī)端+微信端=數(shù)據(jù)同步管理

          免費(fèi)咨詢熱線:

          HTML5(十)-Canvas 與 SVG 區(qū)別

          為一名前端攻城獅,Canvas 和 SVG 對于我們并不陌生,canvas 是 HTML5 提供的新元素,而 svg 存在的時(shí)間要比 canvas 長很多,svg 并不屬于 html,最初的 svg 是由 XML 定義的,在 html 5 中 canvas 與 svg 看著相似,其實(shí)不同。

          一、基本介紹

          Canvas

          • 通過 js 來繪制 2D圖形。
          • canvas 圖像單位是像素。
          • canvas 圖像繪制完畢之后,瀏覽器將不再關(guān)注它,如果位置發(fā)生變換,就需要重新繪制。

          SVG

          • svg 使用 XML 描述的2D圖像。
          • svg 是基于 xml 的,所以 svg 中繪制圖形還是使用的元素,js 給元素任意添加事件。
          • svg 繪制的圖像是一個(gè)對象,如果對象的屬性發(fā)生改變,瀏覽器將重新繪制圖形。

          二、SVG與Canvas比較

          1. svg 是一種矢量圖,而 canvas 依賴于分辨率。所以 svg 放大不會(huì)失真,但是 canvas 繪制的圖形會(huì)失真。
          2. svg 支持事件處理器,而 canvas 不支持事件處理器。
          3. svg 中的文字獨(dú)立于圖像,文字可保留,可編輯和可搜索,canvas 的文本渲染能力弱。
          4. canvas 適合圖像密集型的游戲,頻繁地重繪圖像,svg 繪制的復(fù)雜度高時(shí)減慢渲染的速度。
          5. canvas 繪制的圖形可以多種格式 (jpg、png) 保存圖片,但是 svg 繪制的只能以 .svg 格式保存,使用時(shí)可以引入 html 文件。
          6. canvas 適合開發(fā)游戲,svg 不適合游戲應(yīng)用。

          二、如何應(yīng)用

          2.1、功能上來說

          canvas 是一個(gè)畫布,繪制出來的圖形是位圖,因此 canvas 可以繪制圖片,在實(shí)際應(yīng)用中,由于渲染性能高,所以大型游戲開發(fā)都用的 canvas 。除此之外,還有統(tǒng)計(jì)中常見的柱狀圖、餅圖、雷達(dá)圖等也使用的 canvas 。而 svg 繪制的是矢量圖,放大后不會(huì)失真,所以很適合做地圖。

          2.2、操作方面講

          canvas 繪制的圖形,只能給 canvas 整個(gè)畫布添加事件,而不能給某個(gè)圖形或文件添加事件處理器,但是 svg 支持事件綁定,如果需要添加帶有事件的動(dòng)畫效果時(shí),就需要選擇 svg。

          凡是互聯(lián)網(wǎng)工作者都會(huì)在Excel或者Word文檔中使用并制作過統(tǒng)計(jì)圖,統(tǒng)計(jì)圖不僅可以幫助我們從數(shù)據(jù)中提取信息,為預(yù)測和決策作依據(jù),也能讓我們把信息提供或者傳達(dá)給給其他人。

          用Excel制作統(tǒng)計(jì)圖在數(shù)據(jù)量不大的情況下當(dāng)然是沒問題的,但是,當(dāng)企業(yè)的業(yè)務(wù)數(shù)據(jù)越來越多的時(shí)候,需要從時(shí)間、地點(diǎn)、欄目等各個(gè)維度來進(jìn)行數(shù)據(jù)分析的時(shí)候,你會(huì)發(fā)現(xiàn)Excel開始拖累你的工作。在眾多的BI工具測評(píng)中,好友力薦的一站式數(shù)據(jù)分析工具——億信ABI獨(dú)獨(dú)吸引了我的眼球,要問原因?別的不多說了,但就統(tǒng)計(jì)圖方面來講,以下四點(diǎn)可以概括:

          1、支持WEB上的動(dòng)態(tài)統(tǒng)計(jì)圖設(shè)計(jì)

          允許用戶即席定義、編輯各種統(tǒng)計(jì)圖,用戶只需通過鼠標(biāo)簡單的拖拽操作就能實(shí)現(xiàn)數(shù)據(jù)的分析展現(xiàn),操作界面跟excel界面極其類似,能很方便定義各種復(fù)雜的統(tǒng)計(jì)圖。

          2、提供豐富的統(tǒng)計(jì)圖類型

          柱狀圖、線狀圖、K線圖、箱狀圖、條形圖、面積圖、餅圖、點(diǎn)圖、儀表盤、雷達(dá)圖、散點(diǎn)圖、氣泡圖、數(shù)學(xué)公式圖、預(yù)測曲線圖,正態(tài)分布圖,走勢圖……

          3、支持多種圖形風(fēng)格

          2D、3D、Excel、Web、Html5、Fasion、Flash風(fēng)格。

          4、支持統(tǒng)計(jì)圖熱點(diǎn)鉆取

          支持?jǐn)?shù)據(jù)點(diǎn)、系列、圖例等熱點(diǎn)鉆取,且定義簡單快捷。


          如何生成統(tǒng)計(jì)圖

          1、統(tǒng)計(jì)圖的制作流程

          雖然統(tǒng)計(jì)圖的類型和風(fēng)格各異,但是它們的制作過程確實(shí)簡單、一致:

          2、準(zhǔn)備分析數(shù)據(jù)

          創(chuàng)建分析表,產(chǎn)生制作統(tǒng)計(jì)圖需要的分析表數(shù)據(jù),具體方法請參考上一篇文章《報(bào)表分析怎么做?這篇文明明白白告訴你》。

          3、添加統(tǒng)計(jì)圖

          新建一張報(bào)表模板或者編輯已經(jīng)創(chuàng)建的報(bào)表模板,在左邊工具欄下的【統(tǒng)計(jì)圖組件中將統(tǒng)計(jì)圖拖入報(bào)表模板空白處,完成相關(guān)設(shè)置后即可在當(dāng)前的報(bào)表模板中插入統(tǒng)計(jì)圖。

          4、定義顯示模型

          如下圖所示:

          5、設(shè)置數(shù)據(jù)源

          通過下圖中的系列選擇,設(shè)置當(dāng)前統(tǒng)計(jì)圖是一個(gè)系列還是多個(gè)系列;通過數(shù)據(jù)點(diǎn)設(shè)置 設(shè)置圖上每個(gè)系列上數(shù)據(jù)對應(yīng)的來源。下圖列出的是固定系列數(shù)據(jù)點(diǎn)設(shè)置,若是浮動(dòng)系列,數(shù)據(jù)點(diǎn)的設(shè)置界面又有些區(qū)別。

          6、特殊效果設(shè)置

          通過上述步驟完成統(tǒng)計(jì)圖的基本設(shè)置后,通過下圖框中的地方可以設(shè)置比如統(tǒng)計(jì)圖的標(biāo)題、背景墻壁、左軸、底軸等特殊效果。

          最后保存統(tǒng)計(jì)圖所在的分析表,計(jì)算,即可看到根據(jù)系統(tǒng)設(shè)置生成的統(tǒng)計(jì)圖。

          ABI是億信華辰在十多年的數(shù)據(jù)分析、報(bào)表處理基礎(chǔ)上,運(yùn)用了先進(jìn)的數(shù)據(jù)倉庫、商務(wù)智能核心理論,新打造了一款集數(shù)據(jù)采集、處理、分析和展示為一體的平臺(tái)。

          個(gè)企業(yè)在做重要決定時(shí)都傾向于做數(shù)據(jù)分析,實(shí)際上他們很多時(shí)候都是沉淪在數(shù)據(jù)里頭,不知道如何跳出其中。企業(yè)一直尋求更好的方式來可視化數(shù)據(jù)、進(jìn)行更好的互動(dòng)、使圖表多角度化。畢竟,只有從數(shù)據(jù)中得出的見解才是有用的。

          JavaScript 圖表庫出現(xiàn)了,作為美觀且容易理解的交互式的可視化圖表最有力的工具,它更容易提取和傳達(dá)關(guān)鍵的模式和見解,而這一點(diǎn)在靜態(tài)圖表中往往不明顯。

          為了使事情更加簡單,我努力挖掘了很多選項(xiàng),找到了最好的JavaScript 圖表庫。來,讓我們開始吧。

          1、chartist

          Chartist的高效和人性化設(shè)計(jì)甚至吸引了離開 Excel 就會(huì)感覺不舒服的人。可響應(yīng)(使用媒體查詢)和獨(dú)立 DPI 意味著這些圖表可以為你提供一個(gè)良好的解決方案,如果你在考慮將你的圖表應(yīng)用于包括手機(jī),平板和桌面電腦的多終端設(shè)備,基于SVG的設(shè)計(jì)讓它在未來更具兼容性。

          Chartist 的與眾不同在于它是社區(qū)的成果,這使得它沒有其他圖表庫的局限性。由于過于關(guān)注瑣碎的變動(dòng)和功能完整,導(dǎo)致你在使用其他類庫時(shí)很焦心。

          協(xié)議: 開源,所有用戶皆可免費(fèi)使用。

          2、FusionCharts

          FusionCharts帶來了最全面的庫,超過90種圖表和900種圖——所有均就緒備用。它們自詡為行業(yè)內(nèi)最好看的圖表,它提供了一個(gè)功能強(qiáng)大的體驗(yàn)儀表板,通過它可以鳥瞰其整個(gè)業(yè)務(wù)功能。

          FusionCharts 兼容從 PC 和 Mac 電腦,iPhone 和 Android 平板電腦等多種設(shè)備;他們做了許多額外的努力來確保跨瀏覽器的兼容性,甚至包括 IE6!

          他們還涵蓋了所有基礎(chǔ)格式 —— JSON 和 XML 數(shù)據(jù)格式都能夠接受;繪制可以通過 HTML5、SVG 和 VML,圖表可以導(dǎo)出為 PNG、JPG 或 PDF 格式。FusionCharts 的擴(kuò)展可以很容易地與你所選擇的任何技術(shù)集成,包括 jQuery,AngularJS,PHP 和 Rails。

          總的來說,F(xiàn)usionCharts 擁有你創(chuàng)建漂亮圖表和做嚴(yán)格業(yè)務(wù)分析所需的任何特征和格式。而且最好的部分是非商業(yè)用途時(shí)你可以免費(fèi)下載并使用,沒有任何限制。

          源碼許可證:非商業(yè)免費(fèi),商業(yè)用途收費(fèi)。

          3、DyGraphs

          Dygraphs 是一個(gè)開源的 JavaScript 圖表庫,最適用于極端大數(shù)據(jù)集。它是開箱式互動(dòng),通過縮放甚至可以支持手機(jī)。

          它既兼容主流瀏覽器,也向后兼容 IE8。選項(xiàng)和自定義回調(diào)功能使它具有極高的可配置性。

          協(xié)議: 開源,面向所有用戶免費(fèi)。

          4、Chartjs

          Chart.js適用于小項(xiàng)目,扁平化,干凈,優(yōu)雅,快速。它是一個(gè)微型的開源庫,最小化壓縮后只有11kb大小。它包括六個(gè)核心圖表類型(線圖,柱圖,雷達(dá)圖,極地圖,餅圖和環(huán)形圖),每個(gè)都是獨(dú)立的模塊,所以你甚至可以只加載項(xiàng)目需要的模塊以最大化縮小代碼占用空間。

          它使用HTML5 canvas元素渲染圖表,并且使用polyfills方式兼容在IE7/8上運(yùn)行。所有圖表都是可響應(yīng)的。

          協(xié)議: 開源,面向所有用戶免費(fèi)。

          5、GoogleCharts

          Google Charts 提供大量不同種類的圖表,它最大程度上滿足了數(shù)據(jù)可視化的需要。圖表基于 HTML5/SVG,為了兼容老版本的 IE 還支持 VML。所有的圖表都是可交互可縮放的。你可以去看看他們的圖表庫。最棒的是他們的圖表絕對免費(fèi)。

          協(xié)議:免費(fèi),但是不開源,在你的服務(wù)器上使用他們的 JS 文件是 Google’s協(xié)議不允許 的。因此如果你是一家企業(yè)并且有很多敏感數(shù)據(jù),Google Charts 可能不是一個(gè)最佳的選項(xiàng)。

          6、HighCharts

          Highcharts 是又一個(gè)流行的交互圖表庫,與其他庫一樣,它是基于 HTML5/SVG/VML,所以不需要擴(kuò)展插件。提供的圖表類型很廣泛,像曲線圖,柱狀圖,條形圖,地圖,儀表盤等。

          它還提供個(gè)人用戶免費(fèi)可在線生成交互式圖表的接口 Highcharts cloud,商業(yè)使用需要購買授權(quán)。

          協(xié)議: 非商業(yè)使用免費(fèi),商業(yè)使用付費(fèi)。

          7、Flot

          Flot 是最古老的圖表庫之一,用法簡單并聚焦交互特性。它是特定的 jQuery 庫,這意味著使用它需要熟悉基礎(chǔ)的 jQuery。但是從另一方面來說,這意味著你可以全面控制呈現(xiàn),動(dòng)作和用戶交互。

          Flot 兼容大多數(shù)瀏覽器,向下兼容到 IE6。Flot 的插件庫提供許多類型的圖,所有貢獻(xiàn)都是社區(qū)提供的。你可以看看這些由 Flot 制作的例子。

          協(xié)議: 開源,面向所有用戶免費(fèi)。

          8、D3.js

          D3通常是提到數(shù)據(jù)可視化時(shí)出現(xiàn)的第一個(gè)名字。它是一個(gè)非常強(qiáng)大的開源項(xiàng)目,可以通過動(dòng)態(tài)更新DOM創(chuàng)造出驚人的視覺效果和圖形。另外,它使用HTML,CSS和SVG。

          它符合W3C標(biāo)準(zhǔn),并且是跨瀏覽器兼容的。開發(fā)者們往往喜歡它所帶來的許多特征,比如“進(jìn)入和退出”以及強(qiáng)大的過渡。你可以到這里找到一些 D3 的示例。

          需要說明的是,它沒有預(yù)建圖表,即時(shí)學(xué)習(xí)基本的圖表也有一條非常陡峭的學(xué)習(xí)曲線。但開發(fā)者們極富創(chuàng)新性,開發(fā)出了不少基于D3的包裝庫。后面我們將涉及到其中的一些佼佼者。

          源碼許可證: 開源。免費(fèi)使用。

          9、n3-charts

          如果你正在尋找一種在 AngularJS 應(yīng)用下創(chuàng)建簡單互動(dòng)線圖的方法,這將是你所需要的。N3 基于D3.js,針對少量受眾–基于 AngularJS 繪制通用線圖。如果你需要更多的圖表類型,它可能不適合你。你可以在這里看到一些N3線圖的實(shí)例。

          源碼許可證:開源。對所有人免費(fèi)。

          10、NVD3

          NVD3是一個(gè)旨在建立可復(fù)用的圖表和組件的 d3.js 項(xiàng)目——它提供了同樣強(qiáng)大的功能,但更容易使用。它可以讓你處理復(fù)雜的數(shù)據(jù)集來創(chuàng)建更高級(jí)的可視化。

          源碼許可證:開源。對所有人免費(fèi)。

          11、Ember Charts

          Addepar 的開發(fā)者正為提升 Ember 以及其附屬庫 Ember Charts、Ember Tables 和 Ember Widgets 的體驗(yàn)的工作而穩(wěn)步推進(jìn)著。Ember Charts 基于 D3.js 和 Ember.js 框架提供了一個(gè)易于使用的,可擴(kuò)展的圖表套件。

          其強(qiáng)壯且優(yōu)雅——針對壞數(shù)據(jù)的錯(cuò)誤處理能確保有壞數(shù)據(jù)時(shí)應(yīng)用程序不會(huì)崩潰。你甚至可以通過擴(kuò)展它來創(chuàng)建自己的圖表類型。

          源碼許可證:開源。對所有人免費(fèi)。

          12、jQuery Sparklines

          我們一直在談?wù)撃切┠芨愣ㄒ磺械闹亓啃偷膸臁5袝r(shí)你需要的是針對簡單的任務(wù)簡單些的東西。jQuery Sparklines 插件提供了一個(gè)合適的解決方案。它能夠被用來生成迷你型的小內(nèi)嵌圖表,剛好足夠去表現(xiàn)趨勢——只需要最小量的編碼。適用于大多數(shù)現(xiàn)代瀏覽器包括更老的IE6。

          源碼許可證:開源。對所有人免費(fèi)。

          13、Sigma.js

          當(dāng)我們在特定的使用場景下時(shí),我們必須談?wù)?Sigma。Sigma 是一個(gè)強(qiáng)大的 JavaScript 庫,其關(guān)注于呈現(xiàn)交互圖形和 Web 網(wǎng)絡(luò)。

          Sigma 的庫和插件包有大量的互動(dòng)設(shè)置。一旦你使用了 Sigma,你將再也不會(huì)覺得線圖無聊。看一下這個(gè)sigma.js側(cè)翻演示你就會(huì)明白我的意思。

          源碼許可證:開源。對所有人免費(fèi)。

          14、Morris.js

          是的,正如 Morris 所說,好看的圖不應(yīng)該制作困難。Morris 是一個(gè)基于 jQuery 和 Raphael 的輕量級(jí)庫,它提供簡單干凈的線條,面積圖,條形及圓環(huán)圖。如果你正在尋找一些快速簡單且優(yōu)雅的庫,它絕對值得一試。

          源碼許可證:開源。對所有人免費(fèi)。

          15、Cytoscape.js

          Cytoscape.js 是一個(gè)開源的、功能齊全的圖形庫,它純粹用 JavaScript 編寫,基于 LGPL3+ 并完全免費(fèi)。經(jīng)過高度優(yōu)化之后,它并不依賴外部。Cytoscape.js 可以讓你創(chuàng)建可復(fù)用的圖形工具,并能夠集成到你的 JavaScript 代碼中。

          它同樣兼容所有現(xiàn)代瀏覽器,還兼容各種軟件框架,比如CommonJS和Node.js,AMD/Require.js,jQuery 以及 Meteor/Atmosphere 等。注意,雖然它與Cyctoscape 桌面應(yīng)用名字相同,但它們是完全不同的。

          源碼許可證:免費(fèi)。對所有人免費(fèi)。

          16、C3.js

          C3.js 是另一個(gè)基于 D3 可重用的圖表庫。大量的基于 D3 的圖表工具表明了太多人喜歡 D3 的功能,但也反映了大家討厭用 D3 直接編碼。

          C3.js 提供了一種不同于 D3 學(xué)習(xí)曲線的方法,它將構(gòu)建整個(gè)圖表所需要的代碼進(jìn)行了包裝。C3允許你創(chuàng)建自定義的類,這樣就可以生成自己的風(fēng)格。它提供了大量的API和回調(diào),以便你可以在第一次渲染之后更新圖表。

          源碼許可證:開源。對所有人免費(fèi)。

          17、Rickshaw

          Rickshaw 在 Shutterstock 被開發(fā)為一個(gè)建時(shí)間序列圖的工具包。像其他一些我們已經(jīng)討論過的工具一樣,Rickshaw 也是基于 D3 庫。它是開放并開源的(遵循 MIT 許可)。

          你可以在這里看到一些 Rickshaw 的有趣例子。Rickshaw 的眾多擴(kuò)展和自定義的特性能夠讓你生成漂亮的時(shí)序圖。

          源碼許可證:開源。對所有人免費(fèi)。

          18、Cubism.js

          Cubism 也許是顯示時(shí)間序列最佳的 D3 插件。是什么使它脫穎而出的呢?你可以引入多個(gè)來源的數(shù)據(jù),比如 Graphite、Cube 和其他來創(chuàng)造令人敬畏的實(shí)時(shí)圖表來展現(xiàn)你的數(shù)據(jù)。

          它能夠渲染增量,使用 Canvas 來一次一個(gè)像素的偏移圖表。Cubism 的水平圖要比標(biāo)準(zhǔn)的平面圖更好地利用垂直空間,能夠讓你一眼下來獲取更多的數(shù)據(jù)并增加一目了然的可能性。

          源碼許可證:開源。對所有人免費(fèi)。

          19、Plottable.js

          Plottable 采取了一些不同于 D3 框架的方法。它已經(jīng)有一套可插拔的模塊化組件,這些組件封裝了渲染邏輯。這形成了一個(gè)單獨(dú)的布局引擎用來實(shí)際定位。

          這意味著你可以使用任何 Plottable 的組件并將其添加到現(xiàn)有的圖表,或使用 Plottable 創(chuàng)建一個(gè)全新的圖表。它基本以一個(gè)更模塊化、即插即用的方式賦予了你 D3 的力量。可以通過這些示例看一下 Plottable 的能力。

          源碼許可證:開源。對所有人免費(fèi)。

          20、Canvas.js

          正如名字所隱含的,Canvas.js 是一個(gè) HTML5 —— JavaScript 的圖表庫,基于 Canvas 元素。Canvas 允許你創(chuàng)建完全響應(yīng)式且跨設(shè)備的豐富圖表。除此之外,它有許多很好看的主題,他們聲稱要比傳統(tǒng)的基于 Flash 和 SVG 圖型快10倍。

          源碼許可證:非商業(yè)免費(fèi),商業(yè)用途收費(fèi)。

          總結(jié)

          數(shù)據(jù)的可視化和分析是當(dāng)今業(yè)務(wù)流程的的一個(gè)重要的組成部分。公司不論大小,都需要簡潔、高效、互動(dòng)性的方式來詮釋數(shù)據(jù)。所以選擇適合你需求的 JavaScript 圖表庫尤為重要。

          像 FusionCharts,GoogleCharts,Dygraphs 或 D3 的衍生庫可能更適合那些處理大量數(shù)據(jù)的企業(yè),或那些很大程度上依賴于數(shù)據(jù)分析的小公司。如果你只需要一些小而快的庫,Morris.js 或 Chart.js 或許更適合你。對于圖形和和網(wǎng)絡(luò),Cytoscape 或 Sigma.js 可能是更好的選擇。

          我盡量將最好的工具包括在這里,但我相信你也有你的最愛,你最喜歡的 JS 圖表庫是哪個(gè),為什么?


          主站蜘蛛池模板: 国产成人无码精品一区二区三区| 亚洲乱码一区av春药高潮| 曰韩人妻无码一区二区三区综合部| 2022年亚洲午夜一区二区福利| 亚洲一区二区三区在线视频| 亚洲AV网一区二区三区| 精品视频一区二区三区免费| 国产产一区二区三区久久毛片国语| 无码人妻精品一区二区三区66| 日本一区二区三区中文字幕| 韩国精品一区二区三区无码视频| 精品无码中出一区二区| 亚洲一区综合在线播放| 亚洲综合无码精品一区二区三区| 一区二区三区AV高清免费波多| 日美欧韩一区二去三区| 怡红院AV一区二区三区| 亚洲AV无码片一区二区三区| 日韩精品无码免费一区二区三区 | 日韩精品一区二区亚洲AV观看| 国产成人精品无人区一区| 国产在线精品观看一区| 国产丝袜无码一区二区视频| 成人国产精品一区二区网站公司 | 国产av天堂一区二区三区| 久久国产精品一区| 激情内射亚州一区二区三区爱妻| 小泽玛丽无码视频一区| 精品国产一区二区三区AV性色 | 日韩视频一区二区| 日韩视频一区二区在线观看| 国产乱码精品一区三上| 无码精品人妻一区| 亲子乱AV视频一区二区| 无码少妇一区二区三区| 国内自拍视频一区二区三区 | av在线亚洲欧洲日产一区二区| 一区二区三区精品视频| 精品福利一区二区三| 精品欧洲av无码一区二区14| 亚洲AV无码一区二区大桥未久|