VueはEChartsを使用して折れ線グラフと円グラフを実装します

VueはEChartsを使用して折れ線グラフと円グラフを実装します

バックエンド管理プロジェクトを開発する場合、バックエンドのユーザーデータをカウントし、折れ線グラフや円グラフの形式で表示する必要があります。ここでは、要件を満たすために Apache-echarts を使用します。

1. echartsをインストールしてインポートする

npm インストール echarts --save
 
'echarts' から * を echarts としてインポートします。

2. echartsを使用して円グラフを実装する

<テンプレート>
    <div id="chartPie" class="pie-wrap"></div>
</テンプレート>
 
<スクリプト>
    'echarts' から * を echarts としてインポートします。
    require('echarts/theme/macarons');//テーマを導入する export default {
    データ() {
      戻る {
        チャート円: null
      }
    },
    マウント() {
      this.$nextTick(() => {
        this.drawPieChart();
      })
    },
    メソッド: {
      円グラフを描く() {
        mytextStyle = {とする
          色: "#333",                          
          フォントサイズ: 18,                            
        };
        mylabel = {
          表示: true、                 
          位置: "右",          
          オフセット: [30, 40],             
          フォーマッタ: '{b} : {c} ({d}%)',      
          テキストスタイル: mytextStyle
        };
        this.chartPie = echarts.init(document.getElementById('chartPie'),'マカロン');
        this.chartPie.setOption({
          タイトル:
            テキスト: '円グラフ'、
            サブテキスト: 「完全に架空のもの」
            x: '中心'
          },
          ツールチップ: {
            トリガー: 'アイテム',
            フォーマッタ: "{a} <br/>{b} : {c} ({d}%)",
          },
          伝説: {
            データ: ['ダイレクトアクセス'、'メールマーケティング'、'アフィリエイト広告'、'ビデオ広告'、'検索エンジン']、
            左:「中央」、                              
            上:"下",                              
            方向:"水平",                        
          },
          シリーズ: [
            {
              名前: 'アクセスソース'、
              タイプ: 'パイ'、
              半径: ['50%', '70%'],
              中央: ['50%', '50%'],
              データ: [
                {値: 335、名前: '直接アクセス'},
                {値: 310、名前: 'メールマーケティング'},
                {値: 234、名前: 'Alliance Advertising'},
                {値: 135、名前: 'ビデオ広告'},
                {値: 1548、名前: '検索エンジン'}
              ]、
              アニメーションイージング: 'cubicInOut',
              アニメーション時間: 2600,
              ラベル: {           
                強調: mylabel
              }
            }
          ]
        });
      }
    }
  }
</スクリプト>
 
<style lang='less' スコープ>
    .pie-wrap{
        幅:100%;
        高さ:400px;
    }
</スタイル> 

3. echartsを使用して折れ線グラフを実装する

<テンプレート>
    <!-- ECharts のサイズ (幅と高さ) を持つ DOM を準備します -->
    <div id="chartLine" class="line-wrap"></div>
</テンプレート>
 
<スクリプト>
    'echarts' から * を echarts としてインポートします。
    require('echarts/theme/shine');//テーマを導入する export default {
    データ() {
      戻る {
        チャートライン: null
      }
    },
    マウント() {
      this.$nextTick(() => {
        線グラフを描画します。
      })
    },
    メソッド: {
      線グラフを描く() {
        this.chartLine = echarts.init(this.$el,'shine');// 準備された dom に基づいて echarts インスタンスを初期化します。let option = {
            ツールチップ: {
                トリガー: '軸'
            },
            伝説: {
                データ:['メールマーケティング'、'アフィリエイト広告'、'ビデオ広告'、'ダイレクトアクセス'、'検索エンジン']
            },
            計算可能: true、
            x軸: [
                {
                    タイプ: 'カテゴリ'、
                    境界ギャップ: false、
                    軸目盛り: {
                        表示:偽
                    },
                    データ: ['月曜日'、'火曜日'、'水曜日'、'木曜日'、'金曜日'、'土曜日'、'日曜日']
                }
            ]、
            y軸: [
                {
                    タイプ: '値'、
                    軸目盛り: {
                        表示:偽
                    },
                    名前: '(人)'
                }
            ]、
            シリーズ: [
                {
                    名前:「電子メールマーケティング」、
                    タイプ:'line'、
                    スタック: '合計金額'、
                    データ:[120, 132, 101, 134, 90, 230, 210]
                },
                {
                    名前:「アライアンス広告」
                    タイプ:'line'、
                    スタック: '合計金額'、
                    データ:[220, 182, 191, 234, 290, 330, 310]
                },
                {
                    名前:「ビデオ広告」
                    タイプ:'line'、
                    スタック: '合計金額'、
                    データ:[150, 232, 201, 154, 190, 330, 410]
                },
                {
                    名前:「直接アクセス」、
                    タイプ:'line'、
                    スタック: '合計金額'、
                    データ:[320, 332, 301, 334, 390, 330, 320]
                },
                {
                    名前:「検索エンジン」、
                    タイプ:'line'、
                    スタック: '合計金額'、
                    データ:[820, 932, 901, 934, 1290, 1330, 1320]
                }
            ]
        };
        // 指定した設定項目とデータを使用してグラフを表示します。this.chartLine.setOption(option);
      }
    }
  }
</スクリプト>
 
<style lang='less' スコープ>
    .行折り返し{
        幅:50%;
        高さ:400px;
    }
</スタイル> 

4. eチャートの基本概念

1) echartsインスタンス

1 つの Web ページに複数の echarts インスタンスを作成でき、各 echarts インスタンスに複数のチャートと座標系を作成できます (オプションで説明)。 DOM ノード (echarts のレンダリング コンテナーとして) を準備し、その上に echarts インスタンスを作成します。

2) シリーズ

値のセットとそれらがマッピングされるグラフ。シリーズには、少なくとも、値のセット、グラフ タイプ (series.type)、およびこれらのデータがグラフにマッピングされる方法に関するその他のパラメーターが含まれます。
echarts のシリーズ タイプ (series.type) はチャート タイプです。シリーズタイプ (series.type) には、少なくとも、line (折れ線グラフ)、bar (棒グラフ)、pie (円グラフ) があります。

3) コンポーネント

echarts には、少なくとも次のコンポーネントがあります: xAxis (直交座標系の X 軸)、yAxis (直交座標系の Y 軸)、grid (直交座標系の底板)、dataZoom (データ領域ズーム コンポーネント)、visualMap (ビジュアル マッピング コンポーネント)、tooltip (プロンプト ボックス コンポーネント)、toolbox (ツールバー コンポーネント)、series (シリーズ)、...

5.echarts共通設定項目とAPI

1) メインタイトルとサブタイトルを含むタイトルコンポーネント

タイトル:
    text: '円グラフ', // メインタイトルテキスト subtext: '完全に架空のもの', // サブタイトルテキスト x: 'center',
    textStyle:{//メインタイトルのスタイルカラー: "#333",                          
      フォントサイズ: 18
    },
    subtextStyle:{}, // 字幕スタイル itemGap: 10, // メインと字幕の間隔}

2) 凡例コンポーネント

伝説: {
    left:"center", //凡例コンポーネントとコンテナの左側の間の距離 top:"bottom", //凡例コンポーネントとコンテナの上部の間の距離 orient:"horizo​​ntal", //凡例リストのレイアウト方向 itemGap :20, //各凡例項目間の間隔 formatter: function (name) { //凡例テキストのフォーマットに使用され、文字列テンプレートとコールバック関数の両方をサポートします~~~~
        '凡例' + 名前を返します。
    },
    icon:'circle', //凡例項目のアイコン
    データ: [
        {
            アイコン: '三角形'、
            テキストスタイル: {
              色: 「赤」
            },
            名前: 「直接アクセス」 
        },
        ['E メール マーケティング'、'アフィリエイト広告'、'ビデオ広告'、'検索エンジン']、//凡例のデータ配列}

3) xAxis: 直交座標系グリッドのx軸

x軸: [
        {
            type : 'category', // 軸タイプ boundaryGap : false,
            axisTick:{//軸スケール関連の設定を表示: false
            },
            data: ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'] // カテゴリデータ}
    ]

4) yAxis 直交座標系グリッドのy軸

y軸: [
        {
            type : 'value', // 軸タイプ、`'value'` 数値軸、連続データに適しています axisTick: {
                表示:偽
            },
            名前: '(人)'
        }
    ]

5) ツールチッププロンプトボックスコンポーネント

ツールチップ: {
    トリガー: 'axis'、//トリガー タイプ、'axis' 軸トリガー、主に棒グラフ、折れ線グラフ、カテゴリ軸を使用するその他のグラフで使用されます。フォーマッタ: "{a} <br/>{b} : {c} ({d}%)"、//テンプレート変数には、それぞれシリーズ名、データ名、データ値などを表す `{a}`、`{b}`、`{c}`、`{d}`、`{e}` が含まれます。}

6) シリーズリスト、各シリーズはタイプを通じて独自のチャートタイプを決定します

A. シリーズライン
 
シリーズ: [
    {
        名前:「電子メールマーケティング」、
        タイプ:'line'、
        スタック: '合計金額'、
        data:[120, 132, 101, 134, 90, 230, 210], //シリーズ内のデータコンテンツ配列 areaStyle:{ //エリア塗りつぶしスタイル color:'red'
        },
        lineStyle:{//線のスタイルの色:'#000'
        },
        強調:{//グラフィックハイライトスタイルラベル:{
                色: '赤'
            }
        }
    }
]
 
B. シリーズパイ
シリーズ: [
    {
      名前: 'アクセスソース'、
      タイプ: 'パイ'、
      radius: ['50%', '70%'], //円グラフの半径。配列の最初の項目は内側の半径、2 番目の項目は外側の半径です。center: ['50%', '50%'], //円グラフの中心 (センター) 座標。配列の最初の項目は水平座標、2 番目の項目は垂直座標です。パーセンテージで設定できます。パーセンテージで設定する場合、最初の項目はコンテナの幅に相対し、2 番目の項目はコンテナの高さに相対します。roseType: false, //ナイチンゲール チャートとして表示するかどうか、半径でデータ サイズを区別します。data: [ //シリーズ内のデータ コンテンツ配列 {value: 335, name: 'Direct access'},
        {値: 310、名前: 'メールマーケティング'},
        {値: 234、名前: 'Alliance Advertising'},
        {値: 135、名前: 'ビデオ広告'},
        {値: 1548、名前: '検索エンジン'}
      ]、
      animationEasing: 'cubicInOut', //初期アニメーションのイージング効果 animationDuration: 2600, //初期アニメーションの継続時間 label: {           
        強調: mylabel//強調表示されたセクターとラベルのスタイル}
    }

]

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Python pyecharts を使用して円グラフを描く
  • echarts 円グラフの各セクション間のギャップを実現する方法
  • eCharts の円グラフのラベルの重なりの問題を解決する
  • Python データ視覚化ライブラリ PyEcharts 棒グラフ、円グラフ、折れ線グラフ、ワードクラウド チャートの一般的な例の詳細な説明
  • Baidu ECharts プラグインを使用して JavaScript で円グラフを描画する例
  • Django echarts 円グラフデータの動的読み込みの例
  • WeChatアプレットはEchartsチャートを横断して複数の円グラフを実現します
  • Ajax 動的割り当て echarts の例 (円グラフと縦棒グラフ)
  • echarts 円グラフセクターにクリックイベントを追加する例
  • Echarts に基づく円グラフ効果の実現

<<:  MySQLデータを復元する2つの方法

>>:  nginx アンチホットリンクおよびアンチクローラー設定の詳細な説明

推薦する

Java は Excel から MySQL にデータをインポートします

実際の業務では、Excel からデータベースにデータをインポートする必要がある場合があります。データ...

Linux環境変数の設定に関する完全なガイド

Linux環境変数の設定ソフトウェアのインストールをカスタマイズする場合、多くの場合、環境変数を設定...

Docker ベースの Selenium 分散環境の構築

1.画像をダウンロードするdocker pull selenium/hub docker pull ...

MySQLサーバーが消えたエラーの解決策

PHP で MySQL サーバーが消えた問題1. 背景以前、Codeigniter でコンソール コ...

Docker Compose で利用可能な環境変数の詳細な説明

Compose のいくつかの部分は、何らかの方法で環境変数を扱います。このチュートリアルは、必要な情...

Linux で Sudo を使用して権限を委譲する

sudo 権限委譲の概要su スイッチ ID: su –l ユーザー名 –c 'コマンド&#...

Windows で負荷分散に Nginx+Tomcat を使用するための完全な手順

序文今日は、Prince が Windows で負荷分散に Nginx + Tomcat を使用する...

MySQL フラッシュバック ツール binlog2sql の詳細なインストールと設定のチュートリアル

概要binlog2sql は、Python で開発されたオープンソースの MySQL Binlog ...

アイデアを通じてプロジェクトをDockerにパッケージ化する方法

多くの友人が、Docker でプロジェクトを実行する方法をずっと知りたがっていました。今日は、自分の...

モバイル アプリのユーザー インターフェース設計に関する 10 のヒント

ヒント1: 集中力を保つ最高のモバイル アプリは、1 つのことを非常にうまく行うことに重点を置いてい...

dockerを使用してGrafana+Prometheus構成をデプロイする

docker-compose-monitor.yml バージョン: '2' ネットワ...

MySQL 結合クエリの原則の知識ポイント

MySQL 結合クエリ1. 基本概念2 つのテーブルの各行をペアで水平に接続して、すべての行の結果を...

Linux で Multitail コマンドを使用するチュートリアル

MultiTail は、tail コマンド機能と同様に、複数のドキュメントを同時に監視するために使用...

Webリクエストと処理のTomcatソースコード分析

目次序文1. エンドポイント2. 接続ハンドラ3. コヨーテ4. コンテナ責任チェーンパターン序文T...