序文最近のプロジェクトでは、視覚的なチャートが必要になり、最初に思い浮かんだのは Echarts と Hightcharts でした。 使用する視覚化チャートは比較的一般的なものです。Echarts のドキュメントと例は比較的包括的であり、中国語で書かれているので読みやすいため、Echarts を選択しました。 独自のチャートスタイルに Echarts を使用する場合は問題ありませんが、UI が明らかに満足できるものではないため、一連のスタイル調整が行われました... インストールと設定フロントエンドフレームワークはeasywebpack-vueで、使用されているEchartsのバージョンは^5.0.1です。 Echarts 公式ドキュメント: echarts.apache.org/zh/index.html 1. Echartsをインストールするnpm インストール echarts --save 2. Echartsを世界規模で導入main.js に次のコードを追加します。 * を echarts として "echarts" からインポートします。 Vue.prototype.$echarts = echarts; 3. オンデマンドでEchartsを導入する(1)echarts.jsファイルを追加する // echarts に必要なインターフェースを提供する echarts コア モジュールをインポートします。 import * as echarts from "echarts/core"; // さまざまなチャートをインポートします。すべて接尾辞が「Chart」です。 「echarts/charts」から { BarChart、LineChart、PieChart } をインポートします。 //プロンプトボックス、タイトル、直交座標系などのコンポーネントを導入します。コンポーネントのサフィックスはComponentです。 輸入 { タイトルコンポーネント、 ツールチップコンポーネント、 ツールボックスコンポーネント、 グリッドコンポーネント、 凡例コンポーネント、 軸ポインタコンポーネント、 データセットコンポーネント、 } から "echarts/components"; // Canvas レンダラーをインポートします。CanvasRenderer または SVGRenderer のインポートは必須の手順であることに注意してください。import { SVGRenderer } from "echarts/renderers"; // 必要なコンポーネントを登録しますecharts.use([ 棒グラフ、 折れ線グラフ、 円グラフ、 タイトルコンポーネント、 ツールチップコンポーネント、 ツールボックスコンポーネント、 グリッドコンポーネント、 凡例コンポーネント、 軸ポインタコンポーネント、 データセットコンポーネント、 SVGレンダラー、 ]); デフォルトの echart をエクスポートします。 (2)main.jsファイルにインポートする 「./utils/echarts」からechartsをインポートします。 Vue.prototype.$echarts = echarts; 使用例 <テンプレート> <div id="チャート" style="幅: 600px; 高さ: 400px"></div> </テンプレート> <スクリプト> "ramda" から R として * をインポートします。 エクスポートデフォルト{ マウント() { チャートを初期化します。 }, メソッド: { initCharts() { charts = this.$echarts.init(document.getElementById("charts")) とします。 オプション = { タイトル: text: "月間消費動向", // タイトル subtext: "ヒストグラム", // サブタイトル}, x軸: タイプ:「カテゴリー」、 }, y軸: { タイプ: "値", }, color: ["#1890ff", "#52c41a", " #faad14"], // 棒グラフの色データセット: { ソース: [ // データソース ["1月", 1330, 666, 560], [「2月」、820、760、660]、 [「3月」、1290年、1230年、780年]、 [「4月」、832、450、890]、 [「5月」、901、880、360]、 [「6月」、934、600、700]、 ]、 }, シリーズ: [ // アイコン列の設定 { type: "bar", stack: "total", name: "apple" }, { タイプ: "bar", スタック: "total", 名前: "Pear" }, { タイプ: "bar", スタック: "total", 名前: "Peach" }, ]、 ツールチップ: { //プロンプトボックスコンポーネント} }; charts.setOption(オプション); }, }, }; </スクリプト> <style lang="scss" スコープ></style> オリジナルエフェクト表示: 変身後のターゲットエフェクト表示: スタイルの最適化x軸の基本スタイル基本的な設定は以下のとおりで、スケールや軸に関するプロパティを設定できます。 x軸: タイプ:「カテゴリー」、 boundaryGap: true, // 座標軸の両側の空白戦略、デフォルトは true axisTick: { // スケール show: false, }, axisLabel: { // スケールラベルの色: "#808080", フォントサイズ: 12, margin: 8, // スケールラベルと軸の間の距離 interval: "auto", // x軸ラベルの表示間隔、自動}, axisLine: { // 軸の線スタイル: { 色: "#c3c3c3", 幅: 0.5、 }, }, splitLine: { // 分割線 show: false, 間隔: "自動"、 }, splitArea: { // 分割領域 show: false, エリアスタイル: {}, }, }, 最大および最小の目盛りラベル主な属性は間隔です。これは、最大および最小の目盛りラベルのみを表示するのに十分な大きさに設定する必要があります。 x軸: 軸ラベル: { // 間隔: "自動"、 interval: 50, // 最大と最小の座標のみを表示 showMinLabel: true, // 最小スケールのラベルを表示 showMaxLabel: true, // 最大スケールのラベルを表示 } } シリーズデータ列の一時停止のハイライトconst スタックバーシリーズ = { type: "bar", // 棒グラフ barWidth: 32, // 列の幅 stack: "total", // データの積み重ね showBackground: false, // 列の背景色を表示するかどうか // グラフィックスタイルとラベルスタイルを強調表示 emphasis: { // マウスをホバーすると、同じビジネス項目が強調表示され、他の項目はグラフィックからフェードアウトします // focus: "series", // デフォルト設定、現在のホバーデータのみがフェードアウトします focus: "none", }, }; オプション = { シリーズ: R.map( (お) => R.merge(stackBarSeries, { 名前: o, })、 ["リンゴ"、"ナシ"、"桃"] )、 }; 座標インジケータの背景グラデーションカラー主なことは、ツールチッププロンプトボックスコンポーネントのトリガーを設定してx軸サスペンションをトリガーすることです。次に、xAxis座標インジケータaxisPointerを設定し、インジケータマスクスタイルshadowStyleでグラデーションカラーを設定できます。 オプション = { ツールチップ: { //プロンプト ボックス コンポーネント トリガー: "axis", //軸トリガー}, x軸: // 軸ポインタ axisPointer: { タイプ:「影」、 // 座標軸インジケータのz値はグラフィックスの順序を制御しますz: 1, // インジケーターマスクスタイル shadowStyle: { // ホバー背景色のグラデーション問題を解決する color: { タイプ: "線形"、 x: 0, y: 0, x2: 0, y2: 1, カラーストップ: [ { オフセット: 0, color: "rgba(234,244,255,1)", // 0% の色}, { オフセット: 1, color: "rgba(234,244,255,0.3)", // 100% 色}, ]、 global: false, // デフォルトは false }, //背景色と影を設定//color: "rgba(234,244,255,1)", // 不透明度: 1, // 影の色: "rgba(0, 0, 0, 0.5)", // 影ぼかし: 10, // シャドウオフセットX: 10, // 影オフセットY: 10, }, }, }, }; ツールチッププロンプトボックスのカスタムスタイルツールチップのデフォルトのスタイルまたは値は開発要件を満たさない可能性があります。フォーマッタ関数を使用してカスタマイズできます。 オプション = { ツールチップ: { // プロンプト ボックス コンポーネント トリガー: "axis", // 座標軸トリガー パディング: [20, 16, 12, 16], 背景色: "#fff", 常にコンテンツを表示: false、 フォーマッタ: 関数(パラメータ) { html = `<div style="height:auto;width: 163px;"> とします。 <div style="font-size:14px;font-weight:bold;color:#333;margin-bottom:16px;line-height:1;"> ${params[0].axisValue} </div> ${パラメータ 。地図( ( アイテム ) => `<div style="font-size:12px;color:#808080;margin-bottom:8px;display:flex;align-items:center;line-height:1;"> <span style="display:inline-block;margin-right:8px;border-radius:6px;width:6px;height:6px;background-color:${ アイテムの色 };"></span> ${item.seriesName} <span style="flex:1;text-align:right;">¥${item.value[ アイテム.エンコード.y[0] ] || 0 </span> </div>` ) 。参加する("")} <div style="display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#333;padding-top:4px;margin-bottom:8px;line-height:1;"> <span>合計</span> <span>¥${R.reduceRight( R.add、 0, R.drop(1, パラメータ[0].値 || []) ) </span> </div> </div>`; html を返します。 }, }, }; Y軸の基本スタイルオプション = { y軸: { タイプ: "値", 最小間隔: 100, 名前ギャップ: 8, 軸ラベル: { 色: "#808080", フォントサイズ: 10, // フォーマッタ: (値) => { // moneyFormatValue(値)を返します。 // }, }, 分割行: { 線のスタイル: タイプ:「破線」、 色: "#ebebeb", 幅: 0.5、 }, }, }, }; 凡例 凡例スタイルのカスタマイズオプション = { グリッド: { 左: 0, 右: 12、 下: 0, トップ: 68, ラベルを含む: true、 }, // 凡例設定 legend: { トップ: 32, 左: -5、 アイコン:「円」、 itemHeight: 6, // アイコンのサイズを変更する itemGap: 24, テキストスタイル: { フォントサイズ: 12, 色: "#333", padding: [0, 0, 0, -8], // テキストとアイコンの間の距離を変更します}, }, }; 要約するEchart Bar ダブルバーチャートスタイルに関するこの記事はこれで終わりです。Echart Bar ダブルバーチャートスタイルの関連コンテンツについては、123WORDPRESS.COM で以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: VMware15 仮想マシン ブリッジ モードでインターネットにアクセスできない問題の解決方法
>>: Centos7 環境でバイナリ インストール パッケージから mysql5.6 をインストールする方法の詳細な説明
目次1 はじめに2 トリガーの紹介3 トリガーを作成する4 トリガーを表示5. トリガーの削除6 結...
このチュートリアルの動作環境: Windows 7 システム、vue 2.9.6 バージョン、DEL...
1. まず、純粋なHTMLファイルにはindex.htmlというエントリが必要です。 2. Tomc...
1. 圧縮と包装の概要一般的な圧縮ファイルウィンドウズ .rar .zip .7z Linux .z...
スケジュールされたタスク エディターを開きます。Cent は、デフォルトで vim を使用して直接開...
データベースのクエリ `学生`から*を選択 クエリ結果id名前誕生日1張三1970-10-01 2李...
この記事では、テーブルの編集操作を実現するためのjs+Htmlの具体的なコードを参考までに共有します...
最近 Docker を勉強しているのですが、よく問題に遭遇します。Docker イメージをダウンロー...
この記事では、CentOS 7 環境で MySQL 5.6 の複数のインスタンスを作成する方法につい...
この記事の例では、下部のポップアップウィンドウで複数選択を実装するためのVueの具体的なコードを共有...
この間、私は docker を勉強していたのですが、nginx をデプロイするときに行き詰まりました...
1. SQLExceptionの概要JDBC を使用してデータ ソース (この記事のデータ ソースは...
必要な環境をインストールする1. gccのインストールnginx をインストールするには、公式サイト...
序文フロントエンドで非常に便利な、小さなアイコン付きの検索ボックスを作成する方法をご紹介します。エフ...
目次ポータルエラー境界処理エラー境界を使用しない場合はどうなりますか?注記ポータルスロットとも言えま...