Vueはechartを使用してラベルと色をカスタマイズします

Vueはechartを使用してラベルと色をカスタマイズします

この記事では、参考までに、echartを使用してタグと色をカスタマイズするVueの具体的なコードを紹介します。具体的な内容は次のとおりです。

レギュラースタイル


UIペイントスタイル効果


詳細は、小さな点の色が円グラフ部分の色と一致している必要があるということです。これは、バージョン 5.0 (echarts バージョン) より前のバージョンでこのコードを使用して実現できます。

ラベル:{
 フォーマッタ: パラメータ =>{//●
       戻る (
               '{アイコン|▅}{名前|' +params.name+ '}{値|' +
               パラメータ値 + '}'
           );
       },
       リッチ:
           アイコン:
               フォントサイズ: 16
           },
           名前: {
               フォントサイズ: 16,
               パディング: [0, 10, 0, 4],
           },
           価値: {
               フォントサイズ: 16,
           }
       },
}

しかし、私のプロジェクトには 5.0 でのみサポートされている特殊効果がいくつかあるため、5.0 にアップグレードする必要があり、そうしないとこの色は機能しなくなります。それを実装するための解決策を見つける必要があり、これが最終的に実装された方法です。データを割り当てるときに、各ラベルの色を再割り当てし、円グラフのカラー ブロックの値を割り当てます。
円グラフ内のパーセンテージが重ね合わされており、バスケットで囲まれているため、ここには 2 セットのデータがあります。

構成項目:

シリーズ: [
    {
      タイプ: 'パイ'、
      半径: [0, '75%'],
      中央: ['50%', '50%'],
      上:0,
      // ローズタイプ: '半径',
      ラベルの重複を避ける: true,
      // 最小表示ラベル角度: 0.6,
      開始角度: 0,
      ラベル: {
        表示:true、
        位置: '外側'、
        alignTo: 'エッジ'、
        //別の解法点法線: {
          フォーマッタ: パラメータ => {
            // フォーマットカラー(params.color)
            // 色 = params.color
              戻る (
                  '{アイコン|● }{名前|' + パラメータ名 + '}'+'\n'+'{値|' +
                  パラメータ値+'times' + '}'
              );
          },
          パディング:[0,-40,25,-40],
          リッチ:
              アイコン:
                フォントサイズ: 15,
              },
              名前: {
                フォントサイズ: 13,
                色: '#666666'
              },
              価値: {
                フォントサイズ: 12,
                色: 'rgba(0,0,0,0.35)'
              }
          }
        }
      },
      ラベル行:{
        長さ:10,
        長さ2:70,
        スムーズ: 偽、
        線のスタイル:{
          色:"rgba(0,0,0,0.15)"
        }
      },
      データ: []
    },
    {
      名前: ''、
      タイプ: 'パイ'、
      半径: [0, '75%'],
      中央: ['50%', '50%'],
      データ:[]、
      上:0,
      // ローズタイプ: '半径',
      ラベルの重複を避ける: true,
      開始角度: 0,
      アイテムスタイル: {
          普通: {
              ラベル: {
                  表示: true、
                  位置: '内側'、
                  色:"#fff",
                  フォントサイズ: 14,
                  配置:"中央",
                  formatter: function (p) { //インジケーター行はテキスト、パーセンテージに対応します。 return p.percent + "%";
                  }
              },
          }
      }
    }
  ]

再割り当て:

//カラーカードを取得して再割り当てする let colorArr = pieOption.color

 seriesData = JSON.parse(JSON.stringify(this.orderServiceTimeLenData.output.value.rows)) とします||[]
      seriesData1 を JSON.parse(JSON.stringify(this.orderServiceTimeLenData.output.value.rows)) とします||[]
      if(シリーズデータ.長さ){
        seriesData.forEach((item,index)=>{
          アイテム名 = アイテムタイプStr
          アイテム値 = アイテム番号
          item.label = {color:colorArr[インデックス]}
        })
        seriesData1.forEach((item,index)=>{
          アイテム名 = アイテムタイプStr
          アイテム値 = アイテム番号
        })
      }
{凡例: {data: seriesData}、シリーズ: [{data: seriesData}、{data: seriesData1}]} を返します。

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

以下もご興味があるかもしれません:
  • Vue カスタムタグと単一ページの複数ルーティング実装コード
  • Vue の el-form ラベルのカスタム el-select ドロップダウン ボックス ラベル機能
  • Vueカスタムタグのsrc属性では相対パスを使用できません
  • Vue2.0で実装したタブ切り替え効果の例(内容はカスタマイズ可能)
  • Vue-basicタグとカスタムコントロールの詳細な説明

<<:  Dockerで最もよく使われるイメージコマンドとコンテナコマンドの詳細な説明

>>:  MySQL でのトランザクションの使用方法

推薦する

Vueでaxiosを簡単にカプセル化する方法

Vueにaxiosを挿入する 'axios' から axios をインポートします。...

MySQL サーバー ログイン エラー ERROR 1820 (HY000) の解決方法

障害サイト: MySQL サーバーにログインし、どのコマンドを実行してもこのエラーが発生します my...

MySQL でプロファイルを使用する方法のチュートリアル

プロフィールとは何ですか?特定の SQL のパフォーマンスを分析したい場合に使用できます。プロファイ...

mysql mycat ミドルウェアのインストールと使用

1. mycatとはエンタープライズアプリケーション開発のための完全にオープンソースの大規模データベ...

ローカルの Windows リモート デスクトップから Alibaba Cloud Ubuntu 16.04 サーバーに接続する方法

ローカル Windows リモート デスクトップが Alibaba Cloud Ubuntu 16....

Reactにおける制御されたコンポーネントと制御されていないコンポーネントの簡単な分析

目次制御されていないコンポーネント制御コンポーネント知らせ結論は制御されていないコンポーネントフォー...

Tomcat の一般的な例外と解決コードの例

弊社のプロジェクトは Java で開発され、ミドルウェアは Tomcat でした。運用中に、Tomc...

画像をラベルとして使用すると、IE では for 属性が機能しません。

例えば:コードをコピーコードは次のとおりです。 <input type="check...

Alpine イメージに Ansible サービスを追加する方法

apk add ansible を使用して、alpine イメージに ansible サービスを追加...

jQueryはネストされたタブ機能を実装します

この記事では、ネストされたタブ機能を実装するためのjQueryの具体的なコードを参考までに紹介します...

Vue-cliはプロジェクトを作成し、プロジェクト構造を分析します

目次1. ディレクトリを入力してプロジェクトを作成する2. 必要な設定項目を選択します2.1 Vue...

Vue ミックスインの詳しい説明

目次ローカルミックスイングローバル ミックスイン要約するローカルミックスイン <テンプレート&...

MySQL パスワードに特殊文字が含まれている場合とコマンドラインからログインする場合

サーバーでは、データベースにすばやくログインするために、通常は mysql -hhost -uuse...

InnoDBのインデックスページ構造、挿入バッファ、適応ハッシュインデックスについての簡単な説明

InnoDB インデックスの物理構造すべての InnoDB インデックスは Btree インデックス...

JS でオブジェクト プロパティを簡単にトラバースするいくつかの方法

目次1. 自己列挙可能なプロパティ2. Object.values()はプロパティ値を返します3. ...