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 設定に関する問題と注意事項

推薦する

Windows で virtualenv を使用して仮想環境を作成する方法 (2 つの方法)

オペレーティング システム: windows10_x64 Python バージョン: 3.6.8仮想...

Vant Uploaderは1枚以上の写真をアップロードするコンポーネントを実装します

この記事では、1枚以上の写真をアップロードするためのVant Uploaderコンポーネントを紹介し...

ウォーターフォールフローレイアウト(無限読み込み)を実現する js

この記事の例では、ウォーターフォールフローレイアウトを実装するためのjsの具体的なコードを参考までに...

MySql8.023 インストール プロセスの詳細なグラフィック説明 (初回インストール)

まず、MySQL公式サイトからインストールパッケージをダウンロードします。MySQLはオープンソース...

ウェブページの背景画像を伸ばす2つの方法

解決策は2つあります。 1つはCSSで、background-size:coverを使用して画像の伸...

キーフリーログインプロセスを実現するためのLinux構成の分析

1.sshコマンドLinux では、ssh コマンドを使用して別のサーバーにログインできます。 2 ...

Docker の 4 つのネットワーク タイプの主な例

4 つのネットワーク タイプ:なし: コンテナのネットワーク機能を一切設定しません。--net=no...

8桁の割引コードをランダムに生成し、MySQLデータベースに保存します。

現在、多くの企業が割引コードを通じてプロモーションを行っています。今では、8桁の割引コードを実装して...

MySQL でコミットされていないトランザクション情報を見つける方法

少し前に、「ORACLE でコミットされていないトランザクションの SQL ステートメントを見つける...

MySQL で sum 関数を使用する例のチュートリアル

導入今日は、MySQL の sum 関数の使い方を紹介します。この関数は、MySQL データベースを...

Vueプロジェクトでlessを使用するためのヒント

目次序文1. スタイルの浸透1. パターン浸透とは何ですか? 2. 使い方は? 2. ミキシング1....

MySQL 5.7 クラスタ構成手順

目次1. サーバーAのmy.cnfファイルを変更する2. サーバーBのmy.cnfファイルを変更する...

HTMLはシンプルで美しいログインページを作成します

まずは見てみましょう。 HTML ソースコード: XML/HTML コードコンテンツをクリップボード...

Windows Server 2008 64ビット MySQL5.6 インストール不要版 設定方法図

1 公式ウェブサイトから MySQL 5.6 バージョンの圧縮パッケージmysql-5.6.36-w...

Linux で MySQL データベースのデータ ファイル パスを変更する手順

rpm インストール方法を使用して MySQL データベースをインストールした後、データ ファイルの...