整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          為何強烈推薦使用 ApexCharts.js 來繪制交互圖表

          家好,很高興又見面了,我是"高級前端?進階?",由我帶著大家一起關注前端前沿、深入前端底層技術,大家一起進步,也歡迎大家關注、點贊、收藏、轉發,您的支持是我不斷創作的動力。

          什么是 ApexCharts

          ApexCharts 是現代 JavaScript 圖表庫,允許開發者使用簡單的 API 和 100 多個開箱即用型示例構建交互式數據可視化。

          ApexCharts 包含很多優秀的功能,比如十多種圖表類型可在應用程序和儀表板中提供美觀、響應靈敏的可視化效果。在 FireFox>31+、Chrome>=35+、Safari>=6+、Edge、IE11 等版本的瀏覽器中完全可用。

          ApexCharts的典型特點包括:

          • 可響應性ApexCharts 可在臺式機、平板電腦和手機上輕松擴展??梢栽O置響應式查詢,并且可以針對不同的屏幕尺寸使用不同的布局
          • 可交互性縮放、平移、滾動數據、切換多個系列中的數據集可見性、當用戶將鼠標懸停在數據點上時顯示信息豐富的工具提示,從而更有效傳達數據。
          • 動態化: ApexCharts 的動態特性允許加載所選內容的數據并根據這些選擇創建其他圖表。換句話說,這些功能將使數據真正具有交互性。
          • 高性能:除為圖表提供優質外觀外,ApexCharts 還提供高性能,支持大數據渲染。
          • 流暢的動畫: ApexCharts 在更改數據集、加載動態數據以及與圖表交互時提供流暢的交互體驗。
          • 支持主題: ApexCharts 有 10 多個調色板可供選擇。選擇預定義的顏色主題或創建自己的顏色主題。

          目前 ApexCharts 在 Github 上通過 MIT 協議開源,有超過 13.2k 的 star、1.2k 的 fork、代碼貢獻者 150+,妥妥的前端優質開源項目。

          如何使用 ApexCharts

          首先需要導入相應的庫:

          import ApexCharts from 'apexcharts';

          可以通過下面的代碼使用最少的配置創建基本的條形圖:

          var options = {
            chart: {
              type: 'bar',
            },
            series: [
              {
                name: 'sales',
                data: [30, 40, 35, 50, 49, 60, 70, 91, 125],
              },
            ],
            xaxis: {
              categories: [1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999],
            },
          };
          
          var chart = new ApexCharts(document.querySelector('#chart'), options);
          chart.render();

          渲染效果如下:

          借助于 ApexCharts,開發者還可以創建不同圖表的組合,同步它們并提供無限可能的外觀。

          • 可交互性:縮放、平移和滾動數據進行選擇并加載其他圖表,顯示一些交互性的示例

          • 動態系列更新: 支持下鉆取圖表,其中一個選擇會更新其他圖表的數據

          • 注釋:允許在特定值或軸值上編寫自定義文本,對于擴大圖表的視覺吸引力并使其信息更豐富很有價值。

          • 混合圖表: 可以組合多種圖表類型來創建組合/混合圖表,比如:單個圖表中的線/面積/柱。每種圖表類型都可以有自己的 y 軸。

          • 燭臺圖:使用燭臺圖(常見的金融圖表)來描述證券、衍生品或貨幣的價格變化。 下圖顯示了如何使用另一個圖表作為畫筆/預覽窗格,該窗格充當瀏覽主燭臺圖表的句柄。

          • 熱力圖 :使用熱力圖通過顏色和陰影來表示數據,經常與更大的數據集合一起使用,對于識別模式和重點領域非常有價值。

          • 儀表: 微型儀表是儀表板的重要組成部分,可用于顯示單系列數據。

          參考資料

          https://github.com/apexcharts/apexcharts.js#readme

          https://apexcharts.com/docs/creating-first-javascript-chart/#

          內鋅濕法冶金仍以常規的鋅精礦沸騰焙燒——浸出—凈化——電積為主流。為解決常規浸出法存在的浸出渣回轉窯還原揮發能耗高、環境污染大的弊端,又發展出了熱酸浸出黃鉀鐵釩法和熱酸浸出低污染沉鐵法;針鐵礦除鐵法在丹霞冶煉廠和株洲冶煉廠也實現了工業應用。云南祥云飛龍實業有限責任公司以難處理含氟氯的氧化鋅二次物料為原料,開發出了自主知識產權的“浸出一萃取一鋅電積”的新技術,自2005年以來相繼建成了1萬t、2萬t和10萬t規模的鋅冶煉廠,對我國再生鋅冶煉技術的發展作出了重要貢獻。

          鉛冶煉行業推廣液態高鉛渣直接還原煉鉛技術,取代原有燒結機鼓風爐煉鉛工藝,使我國鉛冶煉工藝技術提高到世界先進水平,大大降低了鉛冶煉能耗、SO 及含重金屬煙塵的排放量。今后鉛、鋅冶煉重點是推廣液態高鉛渣直接還原工藝技術、完善和提高氧氣底吹熔煉爐熔煉技術、鉛富氧閃速熔煉工藝、鉛漩渦柱閃速熔煉工藝及高壓或常壓富氧直接浸鋅技術。4.3.2 鉛鋅冶金科技進步發展方向

          鉛鋅行業技術升級加快,采用清潔環保、節能降耗的先進工藝,提高資源綜合利用水平的鉛鋅聯合冶煉成為發展方向。鉛鋅行業技術不斷進步,正在逐漸改變國內鉛鋅產業的生產結構,推動產業向綠色低碳發展。

          有色金屬會議拓展:

          第五屆全國火法冶金工藝技術與裝備交流會

          https://www.china-mcc.com/meet_show-234.html

          、初識Pyecharts

          pyecharts簡介

          pyecharts 是一個用于生成 Echarts 圖表的類庫, Echarts 是一個由百度開源的數據可視化,憑借著良好的交互性,精巧的圖表設計,得到了眾多開發者的認可。而 Python 是一門富有表達力的語言,很適合用于數據處理。當數據分析遇上數據可視化時,pyecharts 誕生了。


          Pyecharts官網

          https://pyecharts.org/#/zh-cn/intro


          pyecharts安裝

          pip install pyecharts


          二、Pyecharts可視化

          使用pyecharts可以繪制如下圖表:

          Scatter

          散點圖

          Funnel

          漏斗圖

          Bar

          柱狀圖

          Gauge

          儀表盤

          Pie

          餅圖

          Graph

          關系圖

          Line

          折線/面積圖

          Liquid

          水球圖

          Radar

          雷達圖

          Parallel

          平行坐標系

          Sankey

          ?;鶊D

          Polar

          極坐標系

          WordCloud

          詞云圖

          HeatMap

          熱力圖

          這里我們簡介一下常用的圖表的API:

          2.0、初始化設置

          導入相關庫:

          from pyecharts.charts import *
          import pyecharts.options as opts
          • from pyecharts.charts import *: 可以使用所有的圖表對應的函數;
          • 使用 options 配置項,在 pyecharts 中,一切皆 Options,進行參數設置;

          總體說明一下:

          1. .render_notebook ()隨時隨地渲染圖表;
          2. .render() 這個不會直接產生圖表,而是形成一個render.html的文件,可在瀏覽器中打開查看圖表;


          2.1、scatter()

          這里我們繪制一個正余弦的散點圖

          x = np.linspace(0, 2*np.pi, 100)
          y = np.sin(x)
          y2 = np.cos(x)
          
          
          # 參數設置
          (Scatter() # 圖形種類
           .add_xaxis(xaxis_data=x) # 設置x軸序列
           .add_yaxis(series_name='sin', y_axis=y) # 設置y軸序列
           .add_yaxis(series_name='cos', y_axis=y2, label_opts=opts.LabelOpts(is_show=False)) # is_show = False:表示不顯示數值部分
          ).render_notebook()

          結果如下:


          2.2、line()

          from pyecharts.charts import Line
          import pyecharts.options as opts
          
          
          x = np.linspace(0, 2*np.pi, 100)
          y = np.sin(x)
          
          
          (
              Line()
              .add_xaxis(xaxis_data=x)
              .add_yaxis(series_name='sin', y_axis=y, label_opts=opts.LabelOpts(is_show=False))
              .add_yaxis(series_name='cos', y_axis=np.cos(x), label_opts=opts.LabelOpts(is_show=False))
              .set_global_opts(title_opts=opts.TitleOpts(title='曲線'),
                               tooltip_opts=opts.TooltipOpts(axis_pointer_type='cross')
                              )
          ).render_notebook()

          結果如下所示:


          2.3、Bar()

          柱狀圖的繪制:

          from pyecharts.charts import Bar
          
          
          bar = (
              Bar()
              .add_xaxis(["襯衫", "羊毛衫", "雪紡衫", "褲子", "高跟鞋", "襪子"])
              .add_yaxis("商家A", [5, 20, 36, 10, 75, 90])
          )
          bar.render_notebook()

          結果如下:

          當然,這里只是最基本的柱圖使用;我們還可以繪制混合柱圖;

          from pyecharts.charts import Bar
          import pyecharts.options as opts
          
          
          num = [110, 136, 108, 48, 111, 112, 103]
          num2 = [90, 110, 101, 70, 90, 120, 99]
          lab = ['哈士奇', '薩摩耶', '泰迪', '金毛', '牧羊犬', '吉娃娃', '柯基']
          
          
          (
              Bar(init_opts=opts.InitOpts(width='720px', height='320px'))
              .add_xaxis(xaxis_data=lab)
              .add_yaxis(series_name='商家A', yaxis_data=num)
              .add_yaxis(series_name='商家B', yaxis_data=num2)
              .set_global_opts(
                  title_opts=opts.TitleOpts(title='各商家擁有犬類數量情況', subtitle='如有雷同,純屬意外')
              )
          ).render_notebook()

          結果如下所示:


          2.4、Pie()

          普通餅圖:

          from pyecharts.charts import Pie
          import pyecharts.options as opts
          
          
          num = [110, 136, 108, 48, 111, 112, 103]
          lab = ['哈士奇', '薩摩耶', '泰迪', '金毛', '牧羊犬', '吉娃娃', '柯基']
          
          
          (
              Pie(init_opts=opts.InitOpts(width='720px', height='320px'))
              .add(series_name='', 
                   data_pair=[(j, i) for i, j in zip(num, lab)]
                  )
          ).render_notebook()

          結果如下:


          環狀餅圖:

          from pyecharts.charts import Pie
          import pyecharts.options as opts
          
          
          num = [110, 136, 108, 48, 111, 112, 103]
          lab = ['哈士奇', '薩摩耶', '泰迪', '金毛', '牧羊犬', '吉娃娃', '柯基']
          
          
          (
              Pie(init_opts=opts.InitOpts(width='720px', height='320px'))
              .add(series_name='', 
                   radius=['40%', '75%'],
                   data_pair=[(j, i) for i, j in zip(num, lab)]
                  )
          ).render_notebook()

          如圖所示:


          玫瑰餅圖:

          from pyecharts.charts import Pie
          import pyecharts.options as opts
          
          
          num = [110, 136, 108, 48, 111, 112, 103]
          lab = ['哈士奇', '薩摩耶', '泰迪', '金毛', '牧羊犬', '吉娃娃', '柯基']
          
          
          (
              Pie(init_opts=opts.InitOpts(width='720px', height='320px'))
              .add(series_name='', 
          #          radius=['40%', '75%'],
          #          center=['25%', '50%'],
                   rosetype='radius',
                   data_pair=[(j, i) for i, j in zip(num, lab)]
                  )
          ).render_notebook()

          如圖所示:


          2.5、圖表的組合使用

          from pyecharts.charts import Bar, Line
          
          
          num = [110, 136, 108, 48, 111, 112, 103]
          lab = ['哈士奇', '薩摩耶', '泰迪', '金毛', '牧羊犬', '吉娃娃', '柯基']
          
          
          bar = (
              Bar(init_opts=opts.InitOpts(width='720px', height='320px'))
              .add_xaxis(xaxis_data=lab)
              .add_yaxis(series_name='', yaxis_data=num)
          )
          
          
          lines = (
              Line()
              .add_xaxis(xaxis_data=lab)
              .add_yaxis(series_name='', y_axis=num, label_opts=opts.LabelOpts(is_show=False))
          )
          
          
          bar.overlap(lines).render_notebook()

          如圖所示:


          三、總結

          Pyecharts可以繪制各種各樣的圖表,主流的一個數據可視化的庫,因為相對于matplotlib,seaborn等數據可視化庫,它的交互性比較好,圖形繪制的比較清晰美觀,所以應用的比較廣泛,本文主要就普通常用圖形做了簡單的總結,當然它還可以繪制地理圖形,具體參見官網相關API。


          主站蜘蛛池模板: 国产日韩视频一区| 成人精品一区二区三区电影| 白丝爆浆18禁一区二区三区 | 亚洲综合av一区二区三区| 国产一区二区免费| 无码人妻AV免费一区二区三区 | 内射白浆一区二区在线观看 | 国产一区二区三区亚洲综合| 天堂一区二区三区在线观看| 深田咏美AV一区二区三区| 久久久国产精品无码一区二区三区| 国产经典一区二区三区蜜芽| 国产Av一区二区精品久久| 一区五十路在线中出| 精品无码一区二区三区爱欲九九| 亚洲一区二区在线视频| 国产精品女同一区二区| 精品无码av一区二区三区| 日韩一区二区三区不卡视频| 北岛玲在线一区二区| 日本一区二区三区在线观看| 欧美av色香蕉一区二区蜜桃小说| 国产视频一区二区在线观看| 一区二区三区www| 色婷婷亚洲一区二区三区 | 无码国产精品久久一区免费| 亚洲一区二区三区高清视频| 欧洲精品码一区二区三区免费看| 无码精品一区二区三区在线| 精品3d动漫视频一区在线观看| 亚欧成人中文字幕一区| 国产一区二区三区免费视频| 亚洲色欲一区二区三区在线观看| 久久精品无码一区二区app| 久久精品免费一区二区三区| 三级韩国一区久久二区综合| 亚洲高清一区二区三区电影| 亚洲国产情侣一区二区三区| 久久久不卡国产精品一区二区| 无码人妻av一区二区三区蜜臀| 无码乱人伦一区二区亚洲|