この記事では、水平傾斜棒グラフを実装するためのVueの具体的なコードを参考までに共有します。具体的な内容は次のとおりです。 結果: 実装コード: <テンプレート> <div class="消費"> <div style="width: 350px; height: 180px" ref="消費チャート" /> </div> </テンプレート> <スクリプト> 'echarts' から echarts をインポートします 定数myShape = { x: 0, y: 0, 幅: 10 // 間隔} // 左側を描画する const InclinedRoofBar = echarts.graphic.extendShape({ 形状: myShape、 ビルドパス: 関数(ctx, シェイプ) { // キャンバスを知っている人なら誰でもこれを理解できるはずです。shape はカスタムから渡されます。const xAxisPoint = shape.xAxisPoint 定数 c0 = [形状.x, 形状.y] 定数 c1 = [shape.x + 14, shape.y - 10] 定数 c2 = [xAxisPoint[0], xAxisPoint[1] - 10] 定数 c3 = [xAxisPoint[0], xAxisPoint[1]] ctx .moveTo(c0[0], c0[1]) .lineTo(c1[0], c1[1]) .lineTo(c2[0], c2[1]) .lineTo(c3[0], c3[1]) .closePath() } }) 定数 colors = ['rgba(50, 197, 255, 0.8)', 'rgba(0, 253, 255, 0.8)', 'rgba(255, 235, 0, 0.8)'] const colors = ['rgba(0, 145, 255, 1)', 'rgba(68, 215, 182, 1)', 'rgba(215, 170, 68, 1)'] // 3 つの表面グラフィックを登録します echarts.graphic.registerShape('InclinedRoofBar', InclinedRoofBar) const デフォルトオプション = { ツールチップ: { 表示: true、 トリガー: '軸'、 軸ポインタ: タイプ: '影' } }, グリッド: { トップ: 10, 下: 30, 左: 10, 右: 10, ラベルを含む: true }, y軸: { タイプ: 'カテゴリ', データ: []、 軸線: { 表示:偽 }, 軸目盛り: { 表示:偽 }, 軸ラベル: { 色(値, インデックス) { 色を返す[インデックス] }, フォントサイズ: 14 } }, x軸: タイプ: '値', 軸線: { 表示:偽 }, 最小: 0, 分割行: { 表示:偽 }, 軸目盛り: { 表示:偽 }, 軸ラベル: { 表示:偽 }, 境界ギャップ: ['20%', '20%'] }, シリーズ: [ { タイプ: 'カスタム'、 名前: ''、 アイテムスタイル: { 色: 'rgba(44, 197, 253, 1)' }, レンダリングアイテム: (パラメータ、API) => { 定数位置 = api.coord([api.value(0), api.value(1)]) 定数xlocation = api.coord([0, api.value(1)]) 戻る { タイプ: 'InclinedRoofBar'、 形: アピ、 x値: api.value(0)、 y値: api.value(1)、 x: 場所[0], y: location[1] + myShape.width、 xAxisPoint: [xlocation[0], xlocation[1] + myShape.width] }, スタイル: { 塗りつぶし: 新しい echarts.graphic.LinearGradient(0, 0, 1, 0, [ { オフセット: 0, 色: colors[params.dataIndex] }, { オフセット: 1, 色: colorss[params.dataIndex] } ]) } } }, データ: [] }, { タイプ: 'バー'、 ラベル: { 普通: { 表示: true、 位置: '右'、 フォントサイズ: 14, オフセット: [15, 0] } }, 背景を表示: false、 バー幅: 14, 背景スタイル: { 色: 'rgba(50, 197, 255, 0.1)' }, アイテムスタイル: { 色: '透明' }, ツールチップ: { 表示:偽 }, データ: [] } ] } エクスポートデフォルト{ データ() { 戻る { myChart: ヌル } }, マウント() { this.myChart = echarts.init(this.$refs.ConsumptionChart) }, メソッド: { getOption(シリーズデータ) { const オプション = defaultOption const { yAxis, series } = オプション // プロセスデータ yAxis.data = ['low', 'middle', 'high'] シリーズ[0].data = シリーズデータ series[1].data = seriesData.map((item, index) => Object.assign(item, { label: { color: colorss[index] } })) this.myChart.setOption(オプション) } } } </スクリプト> 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: CentOS7.8 に mysql 8.0.20 をインストールするための詳細なチュートリアル
>>: TomcatのmaxPostSize属性を設定する際に注意する必要がある問題を解決する
アカウントにログイン DOCKER_REGISTRY=registry.cn-hangzhou.al...
Linux サーバーに GRUB をインストールする方法クラウド移行ツールを使用して、CentOS ...
システムバージョン [root@ ~]# cat /etc/redhat-release CentO...
1. 現在のスクリプトの実際のパスを取得します。 #!/bin/bash if [[ $0 =~ ^...
目次1 ストレステストの指標1.1 秒あたり1.2 クォータ1.3 平均処理時間(RT) 1.4 同...
初心者は、いくつかの HTML タグを理解することで HTML を学習できます。この入門書は、初心者...
目次1 Baota Software StoreにDockerをインストールする2 ゴグスイメージを...
チュートリアルシリーズMySQL シリーズ: MySQL リレーショナル データベースの基本概念My...
この記事では、SMS送信のカウントダウンを実装するためのJavaScriptの具体的なコードを参考ま...
ハードディスクのファイル属性のバッチ表示など、特定の種類のファイルに対してバッチ操作を実行する場合、...
目次1. provide/inject の用途は何ですか? 2. provide/injectの使い...
Linux で FTP サーバーを設定するためのチュートリアルを参照してください https://w...
この記事では、フォームの完全選択または逆選択を実現するためのJavaScriptの具体的なコードを参...
1. デッドロックとは何ですか?正式な定義は次のとおりです: 2 つのトランザクションが相手側で必要...
目次1. 環境整備2. データの準備3. ショーを始める4. 単語分割エンジン要約する参考文献1. ...