echarts饼图

echarts饼图,第1张

    //基于准备好的dom,初始化echarts实例

    var myChart = echartsinit(this$refsmain);

    / 深拷贝一下 生成两个不同的对象 /

    thislineList = JSONparse(JSONstringify(thisreportsList));

    / 展示标题 /

    thislineListtitle = {

      text: "华东饼图数据",

    };

    / 展示提示框组件 /

    thislineListtooltip = {

      / a表示系列名 <br/>表示换行 b表示数据名 c表示数据值 d表示所占的百分比 /

      formatter: '{a} <br> {b} <br> {c} <br> ({d}%)'

    };

    / 把图例的位置调整一下 /

    thislineListlegendtop = '10%';

    thislineListlegendleft = '0';

    / 只显示华东的饼图数据 /

    thislineListseriessplice(1)

    / 先把图标的类型都改成饼图 /

    thislineListseries[0]type = 'pie';

    / 把图例中除了华东的图例都删掉 /

    thislineListlegenddatasplice(1);

    / 拿到时间集合用来展示饼图的name值 /

    let nameList = thislineListxAxis[0]data;

    / 拿到数据用来展示饼图的value值 /

    let valueList = thislineListseries[0]data;

    /  let data = [{

      name:"2017-12-27",

      value:2999

    }] /

    let newArr = [];

    / 下面的 *** 作是为了把两个数组整合成上面的格式 /

    nameListforEach((r, i) => {

      let obj = {

        name: r,

        / 因为两个数组的长度是一样的,

        索引对应的值也是一样的,key和value的值是相对应,

        所以直接使用如下方式取值 /

        value: valueList[i]

      }

      / 把组装好的对象塞到新数组中 /

      newArrpush(obj)

    })

 / 给华东的数据组转好格式后重新赋值,为了展示饼图线对应的名字 /

    thislineListseries[0]data = newArr;

    / 设置饼图的圆心的大小和圆的大小 /

    thislineListseries[0]radius = ['10%', '45%'];

    / 设置圆的上下左右的距离 /

    thislineListseries[0]center = ['58%', '60%'];

    / 把圆的形状设置成玫瑰形 /

    thislineListseries[0]roseType = 'area';

    / 给圆设置圆角 /

    thislineListseries[0]itemStyle = {

      borderRadius: 5

    }

    / 把x轴隐藏 /

    thislineListxAxis = {

      show: false

    }

    / 把y轴隐藏 /

    thislineListyAxis = {

      show: false

    }

    // 绘制图表

    myChartsetOption(thislineList);

    windowPieChart = myChart;

  },

在微信小程序中使用Echarts需要进行一些额外的配置才能正确显示,以下是可能的解决方法:

确认echarts库是否已正确安装,可以在uniapp的依赖管理器中查看echarts是否已被正确安装。

在uniapp中,需要先引入Echarts组件库,在页面中进行调用。可以在页面的 json 文件中添加以下配置:

css

Copy code

{

"usingComponents": {

"ec-canvas": "@echarts-weixin/ec-canvas"

}

}

确保使用的Echarts版本是支持微信小程序的版本,可以使用以下命令安装:

kotlin

Copy code

npm install echarts@^400 --save

npm install echarts-gl@^110 --save

npm install echarts-liquidfill@^111 --save

在使用Echarts的页面中,需要初始化echarts实例,以及将实例绑定到页面的canvas元素上,可以参考以下示例代码:

kotlin

Copy code

import as echarts from 'echarts';

export default {

data() {

return {

ec: {

lazyLoad: true // 延迟加载

}

}

},

onLoad() {

thisecComponent = thisselectComponent('#mychart');

thisecComponentinit((canvas, width, height, dpr) => {

// 初始化echarts实例

const chart = echartsinit(canvas, null, {

width: width,

height: height,

devicePixelRatio: dpr // 像素比

});

// 设置options

chartsetOption({

// options 配置

});

// 将图表实例绑定到页面上

thischart = chart;

thiscanvas = canvas;

return chart;

});

}

}

希望这些解决方法能够帮助你解决问题。

在我们使用图表插件做图时,有时候需要很多张图表,就会在不经意间使用到tab切换功能来实现多张图表展示。那么,这是为啥呢,不会是因为在初始化的时候获取不了你容器的高度和宽度导致的吧!!!不会吧,不会吧。如下图:

解决方案: 一

条件判断   如下图:

解决方案: 二 

目前方案二跟方案一差不多,就不展示了,而且方案二存在一个小bug

刚学习前端一个月,不喜勿喷。

这个年代网络暴力太可怕了,幸好俺是施暴着

ECharts官网: ECharts

1、引入jQueryjs、echartsjs(多种方式)

2、绘制图表

①为ECharts准备一个具备大小(宽高)的Dom

②基于准备好的dom,初始化echarts实例

③异步请求数据

先设置完其它的样式,显示一个空的直角坐标轴,然后获取数据后填入数据。

data1json文件格式如下:

script:

两种方法的显示结果都如下:

datajson文件:

script:

显示结果:

注意:

以上就是关于echarts饼图全部的内容,包括:echarts饼图、请问uniapp引入的echarts在微信小程序不显示是怎么回事啊!、echarts图初始化时挤在一起问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/10632289.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-10
下一篇2023-05-10

发表评论

登录后才能评论

评论列表(0条)

    保存