vue2 vue3 での Echarts の詳細な使用方法

vue2 vue3 での Echarts の詳細な使用方法

1. インストール

npm インストール echarts --save

2. vue2でEchartsを使用する

main.jsファイル内

// echarts をインポート
'echarts' から echarts をインポートします
Vue.prototype.$echarts = echarts 

コンテナが与えられた場合

<div id="myChart" :style="{幅: '300px', 高さ: '300px'}"></div>

echarts初期化はフック関数mounted()で行う必要があります。この関数は、 el が新しく作成されたvm.$elに置き換えられ、インスタンスにマウントされた後に呼び出されます。

// 基本テンプレートを導入する let echarts = require('echarts/lib/echarts')

//棒グラフコンポーネントを導入する require('echarts/lib/chart/bar')

//ツールチップとタイトルコンポーネントを導入する require('echarts/lib/component/tooltip')
'echarts/lib/component/title' が必要です

エクスポートデフォルト{
  名前: 'こんにちは',
  データ() {
    戻る {
      メッセージ: 'Vue.js アプリへようこそ'
    }
  },
  マウント() {
    この.drawLine();
  },
  メソッド: {
    描画線() {
      // 準備された DOM に基づいて、echarts インスタンスを初期化します。let myChart = echarts.init(document.getElementById('myChart'))
      // チャートのタイトルを描画: {
        テキスト: 「折れ線グラフの積み重ね」
    },
    ツールチップ: {
        トリガー: '軸'
    },
    伝説: {
        データ: ['メールマーケティング'、'アフィリエイト広告'、'ビデオ広告'、'ダイレクトアクセス'、'検索エンジン']
    },
    グリッド: {
        左: '3%'、
        右: '4%'、
        下: '3%'、
        ラベルを含む: 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]
        }
    ]
    }
  }
}

3. vue3でEchartsを使用する

setupにはthisがなく、まだレンダリングされていないため、 provide/injectを使用してsetupechartを導入できます。

ルートコンポーネント(通常はApp.vue)にechartを導入します。

'echarts' から * を echarts としてインポートします
'vue' から { provide } をインポートします
 
エクスポートデフォルト{
  名前: 'アプリ'、
  設定(){
    provide('echarts',echarts) //提供する
  },
  コンポーネント:
  }
}

ここで注意すべき点は、 import * as echarts from 'echarts'あり、 import echarts from 'echarts'はないことです。これは、echarts バージョン 5.0 のインターフェースが次のようになっているため、エラーが発生します。

輸出 { 
 EChartsFullOptionをEChartsOptionとして、 
 接続する、 
 切断、 
 処分する、
 getInstanceByDom、 
 IDによるインスタンス取得、 
 取得マップ、 
 初期化、
 登録ロケール、 
 レジスタマップ、 
 登録テーマ 
 };

使用する必要があるページでdivを定義します

<div id="ホームページトラフィックチャート" スタイル="幅: 600px; 高さ: 280px">

次に、Echartsを使用する必要があるページに挿入します。

エクスポートデフォルト{
  名前: 'data_page',
  設定 () {
    const トラフィックデータ = ref({})
    const echarts = inject('echarts')
    マウント時(() => {
      const myChart = echarts.init(document.getElementById('home-page-traffic_chart'))
      // チャートを描画する myChart.setOption({
        タイトル:
          テキスト: 「今日の通話統計」
        },
        ツールチップ: {
          トリガー: '軸'、
          軸ポインタ:
            タイプ: '影'
          }
        },
        グリッド: {
          左: '3%'、
          右: '4%'、
          下: '3%'、
          ラベルを含む: true
        },
        x軸: [
          {
            タイプ: 'カテゴリ',
            データ: ['月', '火', '水', '木', '金', '土', '日'],
            軸目盛り: {
              ラベルに合わせる: true
            }
          }
        ]、
        y軸: [
          {
            タイプ: '値'
          }
        ]、
        シリーズ: [
          {
            名前: 「直接アクセス」
            タイプ: 'バー'、
            バー幅: '60%',
            データ: [10, 52, 200, 334, 390, 330, 220]
          }
        ]
      })
      window.onresize = 関数 () {
        myChart.サイズ変更()
      }
    })
    戻る {
    }
  }

}

効果画像:

以下もご興味があるかもしれません:
  • vue で vue-echarts-v3 を使用するサンプルコード
  • Echarts を使用して棒グラフを描く vue の詳細な説明
  • Django での視覚化に echarts を使用する練習
  • WeChatミニプログラムの基本チュートリアル:Echartの使用
  • ネイティブechartとvue-echartの使用に関する詳細な説明

<<:  MySQL サブクエリとグループ化されたクエリ

>>:  Nginx における 2 つの現在の制限方法についての簡単な説明

推薦する

Vue プロジェクトに Electron を追加するための詳細なコード

1. package.jsonに追加する "メイン": "electr...

MySQL 外部キー制約 (FOREIGN KEY) ケースの説明

MySQL 外部キー制約 (FOREIGN KEY) はテーブルの特別なフィールドであり、主キー制約...

表の境界線の CSS 構文

<br />表の境界線の CSS 構文具体的な内容には、上境界線の幅、右境界線の幅、下境...

MySQL でレプリケーション フィルターを動的に変更する方法

MySQLはレプリケーションフィルターを動的に変更します今日遭遇した問題についてお話しします。今日は...

HTML のタイトル、段落、改行、水平線、特殊文字についての簡単な説明

タイトルXML/HTML コードコンテンツをクリップボードにコピー< h1 >第 1 レ...

WiFi 開発 | WiFi ワイヤレス テクノロジーの紹介

目次WiFiワイヤレステクノロジーの紹介1. WiFiテクノロジーの概要2. ESP8266の紹介W...

CSS ボックスを中央揃えするためのよく使われるいくつかの方法 (要約)

最初のもの: CSSの位置プロパティの使用 <スタイル タイプ="text/css&...

vue-element-admin プロジェクトのインポートとエクスポートの実装

vue-element-admin インポートコンポーネントのカプセル化テンプレートとスタイルまず、...

Mysqlトランザクション処理の詳細な説明

1. MySQLのトランザクションの概念MySQL トランザクションは主に、操作量が多く複雑度の高い...

Windows での Nginx のインストールと環境設定 (nginx をサービスとして実行)

最初で最も重要なステップは、Windows 環境に Ngnix サービスをインストールする方法です。...

VMware 仮想マシンのインストール win7 オペレーティング システム チュートリアル ダイアグラム

VMwareaのインストールプロセスは説明しませんが、主にwin7イメージをロードする方法を説明しま...

MySQL 8.0.17 解凍版のインストールと設定方法のグラフィックチュートリアル

インストール中に遭遇した問題を記録しておきますので、皆様のお役に立てれば幸いです。 1. ダウンロー...

Vue で SuperMap を使用する練習

目次序文関連資料Vue プロジェクトが 2 次元ハイパーグラフを導入ハイパーグラフ 2D ケース引用...

nginx ロケーション優先度の詳細な説明

場所表現タイプ~ は大文字と小文字を区別して通常の一致を実行することを示します~*は大文字と小文字を...

MySQL を解凍してインストールおよび完全に削除する方法の詳細なグラフィック説明

1. MySQLをインストールする(1)ダウンロードしたMySQLの圧縮ファイルをMySQLをインス...