この記事では、水平傾斜棒グラフを実装するための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属性を設定する際に注意する必要がある問題を解決する
最初のステップは、MySQL 8.0.23の無料インストールバージョンをダウンロードすることです。 ...
水平方向では、行の配置を左、中央、右に設定できます。基本的な構文<TR ALIGN="...
Linux システム管理者にとって、サービスがポートに正しくバインドされているか、またはポートをリッ...
問題の説明最近、ホストから次のカーネル情報が報告されました。 7月8日 10:47:42 cztes...
色特性の分類あらゆる色は、赤、緑、青の三原色から構成されます。三原色の中で暖色なのは赤だけなので、作...
MySQL交換パーティションの詳細な例序文exchange パーティションを紹介する前に、まず my...
この記事は主に、nginx を介して方向プロキシを実装するプロセスを紹介します。この記事のサンプル ...
Alibaba Cloud Image Repositoryを使用して外部イメージをダウンロードする...
1. Dockerコンテナ間の相互接続Docker は現在、軽量の仮想化ソリューションとなっています...
主な機能は次のとおりです。製品情報を追加する製品情報を変更する単一の製品を削除する複数の製品を削除す...
目次1. データ型1. MySQL空間データとは何か2. GeoJSONとは3. 空間データ型のフォ...
Macはシェル(ターミナル)SSHを使用してリモートサーバーに接続します前提条件: 接続する必要があ...
この記事は、この時期の「ピーターから奪ってポールに払う」という仕事のスタイルに対する私の不満から生ま...
HTML で余分なテキストを省略記号として表示したい場合は、いくつかの方法があります。 1行テキスト...
CS: ...コードをコピーコードは次のとおりです。 html,body{ margin:0px; ...