要在 UniApp 中使用?tui-xecharts
插件(或類似圖表庫如 uCharts),需遵循以下步驟。以下流程以 ??uCharts??(官方推薦的高性能跨平臺圖表庫)為例,因其在 UniApp 生態中更成熟且文檔完善。若需使用?tui-xecharts
,可參考類似集成邏輯,但需注意其插件市場的具體文檔。
一、安裝圖表插件
1. ??通過 HBuilderX 插件市場安裝??
打開 HBuilderX,進入 ??插件市場??(菜單欄 → 工具 → 插件市場)。
搜索?
uCharts
或?qiun-data-charts
(官方封裝組件),點擊 ??“使用 HBuilderX 導入插件”??。
2. ??通過 npm 安裝(可選)??
npm install @qiun/ucharts
二、配置頁面結構
1. ??添加 Canvas 容器??
在 Vue 文件的?<template>
中添加 Canvas 組件,并指定唯一?canvas-id
:
vue
<template><view><canvas canvas-id="chartCanvas" id="chartCanvas" class="charts" @touchend="handleTouch"/></view>
</template>
2. ??設置樣式?
css
<style scoped>
.charts {width: 100%; /* 寬度自適應 */height: 500rpx; /* 高度按需調整 */
}
</style>
三、初始化圖表與數據
1. ??引入 uCharts 庫?
js
<script>
import uCharts from '@/uni_modules/qiun-data-charts/js_sdk/u-charts/u-charts.min.js'; // 路徑根據實際位置調整
let chartInstance = null; // 圖表實例export default {data() {return {cWidth: 0, // 動態寬度cHeight: 0 // 動態高度};},onReady() {// 轉換 rpx 為像素(適配多端)this.cWidth = uni.upx2px(750); this.cHeight = uni.upx2px(500);this.loadChartData();},methods: {loadChartData() {// 模擬異步數據(替換為真實 API 請求)setTimeout(() => {const chartData = {categories: ["2020", "2021", "2022", "2023", "2024"],series: [{name: "銷售額",data: [300, 450, 280, 600, 800]}]};this.initChart('chartCanvas', chartData);}, 500);},initChart(canvasId, data) {const ctx = uni.createCanvasContext(canvasId, this);chartInstance = new uCharts({type: "column", // 圖表類型:柱狀圖context: ctx, // 畫布上下文width: this.cWidth, // 寬度height: this.cHeight, // 高度categories: data.categories,series: data.series,animation: true, // 開啟動畫padding: [15, 15, 0, 5], // 內邊距extra: {column: {type: "group", // 分組柱狀圖width: 30 // 柱寬}}});},handleTouch(e) {chartInstance.showToolTip(e); // 顯示提示框}}
};
</script>
四、關鍵配置說明
??圖表類型??
修改?
type
參數支持多種圖表:??性能優化??
??大數據量??:啟用滾動?
enableScroll: true
,限制顯示項?xAxis: { itemCount: 8 }
??卡頓處理??:開啟 2D 渲染模式(部分設備需配置)
??樣式定制??
??顏色??:通過?
color: ["#1890FF", "#91CB74"]
修改主題色??坐標軸??:
yAxis: { min: 0, interval: 100 }
設置刻度間隔