Vue+echarts で積み上げ棒グラフを実現

Vue+echarts で積み上げ棒グラフを実現

この記事では、積み上げ棒グラフを実装するためのVue+echartsの具体的なコードを参考までに紹介します。具体的な内容は次のとおりです。

echarts サブコンポーネント

<テンプレート>
  <div class="chart" ref="chartEle"></div>
</テンプレート>
<スクリプト>
  「echarts」からechartsをインポートします。
  '@/components/event/event-bus' から eventBus をインポートします。
  エクスポートデフォルト{
    小道具: {
      凡例データ:
        タイプ: 配列、
        デフォルト: []
      },
      x軸データ: {
        タイプ: 配列、
        デフォルト: []
      },
      シリーズデータ: {
        タイプ: 配列、
        デフォルト: []
      }

    },

    データ() {
      戻る {
        echartsObj: null、
      }
    },

    マウント() {
      var that = これ
      eventBus.$on("ウィンドウのサイズ変更", ターゲット => {
        that.echartsObj && that.echartsObj.resize()
      });
    },

    メソッド: {
      initCharts() {
        this.echartsObj = echarts.init(this.$refs.chartEle)
        オプションの設定()
        // window.onresize = 関数() {
        // this.echartsObj.resize()
        // }
      },

      チャートのサイズを変更する() {
        this.echartsObj.resize()
      },

      オプションを設定する(){
        const that = this
        var オプション = {
          色: ['#2DC6C8', '#B6A2DD'],
          // ツールチップ: { トリガー: 'item'、フォーマッタ: "{a} : {c}" },
          ツールチップ: { },
          //データビュー、折れ線グラフ、復元、保存表示マークツールボックスを右側に表示します: {
            特徴:
              // データビュー: {表示: true、読み取り専用: false},
              // マジックタイプ: {show: true, type: ['line', 'bar']},
              // 復元: {表示: true},
              // saveAsImage: {表示: true}
              魔法の種類: {
                表示: true、
                タイプ: ["line", "bar"],
                アイコン:
                  行: "image:///static/images/toolbox_zhexian.png",
                  バー: "image:///static/images/toolbox_zhuzhuangtu.png"
                }
              },
              復元する:
                表示: true、
                アイコン: "image:///static/images/toolbox_shuaxin.png"
              },
              画像として保存: {
                表示: true、
                アイコン: "image:///static/images/toolbox_xiazai.png"
              }
            }
          },
          伝説: {
            下: '5'、
            データ: this.legendData
          },
          グリッド: {
            上: '40'
          },
          x軸: [
            {
              タイプ: 'カテゴリ',
              データ: this.xAxisData、
              axisLine: { lineStyle: { color: '#7DABB0' }} // x軸の目盛りの色}
          ]、
          y軸: [
            {
              タイプ: '値',
              軸線: {
                lineStyle: { color: '#7DABB0' } // y軸の色},
              軸目盛り: {
                lineStyle: { color: '#7DABB0' } // y軸のスケールの色}
            }
          ]、
          シリーズ: this.seriesData
        }
        this.echartsObj.setOption(オプション)
      }
    }
  }
</スクリプト>
<スタイルスコープ>
  .チャート{
    高さ: 360ピクセル;
    幅: 100%;
  }
</スタイル>

echarts 親コンポーネント

<テンプレート>
  <div>
    <form-search @onSearch="onSearch"> </form-search>
    <div class="panel orioc-table-panel" slot="center">
      <!-- チャート -->
      <多様化-棒グラフ
        ref="バーチャート"
        :legendData="凡例データ"
        :seriesData="シリーズデータ"
        :xAxisData="xAxisData"
      ></多様化-BarChart>
      <!-- 表 -->

    </div>


  </div>
</テンプレート>

<スクリプト>
  '@/components/formSearch/formSearch' から FormSearch をインポートします。
  '@/components/event/event-bus' から eventBus をインポートします。
  '@/components/echarts/diversificationBarChart/index' から DiversificationBarChart をインポートします。
  エクスポートデフォルト{
    名前: 'リスト',
    // コンポーネント: { FormSearch、eventBus、DiversificationBarChart }、
    データ() {
      戻る {
        legendData: [], // 凡例 xAxisData: [], // x軸 seriesData: []// チャートデータ}
    },
    マウント() {
      // リストを読み込む this.legendData = ['自動アラーム', '手動アラーム']
      this.xAxisData = ['2018-09-02', '2019-02-25', '2019-05-25']
      this.seriesData = [
        {
          名前:「自動アラーム」
          タイプ: 'バー'、
          stack:'111', // スタック barMaxWidth: '100', // 棒グラフデータの最大幅: [20, 30, 40]
        },
        {
          名前:「手動アラーム受信」
          タイプ: 'バー'、
          stack:'111', // スタック barMaxWidth: '100', // 棒グラフデータの最大幅: [10, 50, 35]
        }
      ]
      this.$nextTick(() => {
        eventBus.$emit('ウィンドウのサイズ変更')
        this.$refs.barCharts.initCharts()
      })
    },
    メソッド: {
      onSearch(データ) {}
    }
  }
</スクリプト>

<スタイルスコープ>

</スタイル>

レンダリング

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

以下もご興味があるかもしれません:
  • Vue+Echartは3次元の縦棒グラフを実現します
  • VueはEchartアイコンプラグインの棒グラフを使用します
  • Echarts を使用して棒グラフを描く vue の詳細な説明
  • Vue+Echart 棒グラフで疫病データ統計を実現
  • Vue echarts は水平棒グラフを実現します
  • Vue+echart で 2 列チャートを実現
  • Vueは水平の斜めの棒グラフを実装します
  • Vue+echarts でプログレスバーのヒストグラムを実現
  • VueはEchartsを使用して3次元棒グラフを実装します
  • Vue+ Antv F2 は積み上げ棒グラフを実現します

<<:  MySQL 8.0 に移行する際の注意点 (要約)

>>:  Tomcat の maxPostSize 設定に関する問題と注意事項

推薦する

ページキャッシュを無効にするいくつかの方法を共有する

本日、開発中に、顧客からページをキャッシュしないように要求される方法に遭遇しました。調べたところ、ペ...

JS の難しさ 同期と非同期、スコープとクロージャ、プロトタイプとプロトタイプ チェーンの詳細な説明

目次JS スリーマウンテンズ同期 非同期同期と非同期の違い範囲、終了関数スコープチェーンブロックスコ...

CSS中級者向けアダプティブレイアウトの5つのソリューションの詳細な説明

序文ページを作っていく上で、ページレイアウトに関する内容に遭遇することが多く、面接でも聞かれることも...

Nginx ソースコード調査における nginx 電流制限モジュールの詳細な説明

目次1. 電流制限アルゴリズム2. nginxの基礎知識4. 実戦要約する高並行性システムには、キャ...

Linux 上での Go 環境の構築のインストールと設定の説明

Linux で Go 環境を構築するのは非常に簡単です。 1. go1.2.1.linux-386....

Ubuntuで顔認識ログインを実装するための完全な手順

1. Howdyをインストール: howdyプロジェクトアドレス sudo add-apt-repo...

Docker ケース分析: MySQL データベース サービスの構築

目次1 設定ディレクトリとデータディレクトリを作成する3 イメージからホストに構成ファイルをコピーす...

Dockerコンテナ監視の原理とcAdvisorのインストールおよび使用方法

本番環境におけるコンテナの稼働状況を監視することは非常に重要です。監視を通じて、コンテナの稼働状況を...

シンプルな画像切り替えを実現するJavaScript

この記事では、JavaScriptで簡単な画像切り替えを実現するための具体的なコードを参考までに紹介...

base target="" はフレームを開くためのベースリンクのターゲットを指定します

<base target=_blank> は、基本リンクのターゲット フレームを新しいペ...

MYSQLデータベースの最適化段階を簡単に理解する

導入面接官がこんな質問をしたことはありませんか?データベースをどのように最適化しますか?では、この質...

ウェブサイト上のWeiboコンポーネントの再設計の詳細な紹介(写真とテキスト)

前面に書かれたWeibo コンポーネントは、サードパーティのアクセス ユーザーが開発を必要とせずに ...

モバイルデバイスで 1 ピクセルの境界線の問題を解決するいくつかの方法 (5 つの方法)

この記事では、モバイルデバイス上の 1 ピクセルの境界線の問題を解決する 5 つの方法を紹介します。...

MySql における特殊演算子の使用の概要

序文MySQL には次の 4 種類の演算子があります。算術演算子比較演算子論理演算子ビット演算子これ...

css3 flexレイアウト justify-content:space-between 最後の行は左揃えになります

justify-content:space-betweenレイアウトを使用する場合、要素の最後の行に...