2025-04-22 14:39:59 +08:00

94 lines
2.6 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import * as echarts from '../../component/ec-canvas/echarts';
function initChart(canvas, width, height, dpr) {
const chart = echarts.init(canvas, null, {
width: width,
height: height,
devicePixelRatio: dpr // 将此选项设置为 2可以在高分辨率屏幕上绘制更清晰的图表
});
canvas.setChart(chart);
const option = {
xAxis: {
type: 'category',
data: ['16:41', '22:41', '04:41', '10:41', '16:41']
},
yAxis: {
type: 'value',
data: ['0ml','560ml']
},
series: [{
data: [150, 230, 224, 218, 135, 147, 260],
type: 'bar',
barWidth: 15,
itemStyle: { //柱状颜色和圆角
color: {
x:0,
y:1,
colorStops:[{
offset: 0,
color: '#FFBBAC',
},{
offset: 1,
color: '#FF512A'
}]
},
barBorderRadius: [5, 5, 0, 0], // (顺时针左上,右上,右下,左下)
},
}]
};
chart.setOption(option);
return chart;
}
Page({
data: {
imagePath: '',
ec: {
onInit:initChart
},
},
onReady() {
},
onLoad(){
let that = this
setTimeout(()=>{
const ecComponent = that.selectComponent("#mychart-dom-bar")
// 将 canvas 内容转换为临时图片文件
ecComponent.canvasToTempFilePath({
// canvasId: 'mychart-dom-bar',
success: (result) => {
this.base64({
url:result.tempFilePath,
type:'png',
}).then((res)=>{
that.setData({
imagePath:res
})
})
// console.log('转换成功,图片路径:', result.tempFilePath);
},
fail: (err) => {
console.error('转换失败:', err);
}
});
},2000)
},
base64({ url, type }) {
return new Promise((resolve, reject) => {
wx.getFileSystemManager().readFile({
filePath: url, //选择图片返回的相对路径
encoding: 'base64', //编码格式
success: res => {
resolve('data:image/' + type.toLocaleLowerCase() + ';base64,' + res.data)
},
fail: res => reject(res.errMsg)
})
})
},
});