uniapp通过ucharts实现图表的显示

在做项目时避免不了要完成数据的分析及数据的可视化,uniapp可以使用ucharts和echarts来实现数据的可视化,今天,我们就来学习一下用ucharts来实现图表。

具体代码可参考秋云官网:uCharts官网 - 秋云uCharts跨平台图表库

我们现在先用本地数据实现图表(以饼图为例)

<template>
	<view class="charts-box">
		<qiun-data-charts type="pie" :opts="opts" :chartData="Bing" />
	</view>
</template>

<script>
	export default {
		data() {
			return {
				Bing: {}
				}
			};
		},
		onReady() {
			this.getBing();
		},
		methods: {
			getBing() {
				setTimeout(() => {
					let res = {
						series: [{
							"data": [{
									"name": "月薪:0-15k",
									"value": 50
								},
								{
									"name": "月薪:15-20k",
									"value": 30
								},
								{
									"name": "月薪:20-30k",
									"value": 20
								},
								{
									"name": "月薪30k+",
									"value": 18
								}
							]
						}]
					};
					this.Bing = JSON.parse(JSON.stringify(res));
				}, 500);
			},
		}
	};
</script>

<style scoped>
</style>

opts: {
                    color: ["#1890FF", "#91CB74", "#FAC858", "#EE6666", "#73C0DE", "#3CA272", "#FC8452", "#9A60B4",
                        "#ea7ccc"
                    ],
                    padding: [5, 5, 5, 5],
                    enableScroll: false,
                    extra: {
                        pie: {
                            activeOpacity: 0.5,
                            activeRadius: 10,
                            offsetAngle: 0,
                            labelWidth: 15,
                            border: true,
                            borderWidth: 3,
                            borderColor: "#FFFFFF",
                            linearType: "custom"
                        }
                    } 

同理,柱状图以及折线图可以根据此来完成

现在,可以通过服务器获取数据,如果获取的数据如下:

{
  "series": [
    {
      "data": [
        {
          "name": "月薪:0-15k",
          "value": 50
        },
        {
          "name": "月薪:15-20k",
          "value": 30
        },
        {
          "name": "月薪:20-30k",
          "value": 20
        },
        {
          "name": "月薪30k+",
          "value": 18
        }
      ]
    }
  ]
}

这样可以通过request请求获取数据

<template>
	<view class="charts-box">
		<qiun-data-charts type="pie" :opts="opts" :chartData="Bing" />
	</view>
</template>

<script>
	export default {
		data() {
			return {
				Bing: {}
				}
			};
		},
		onReady() {
			this.getBing();
		},
		methods: {
			getBing() {
				uni.request({
					url: '你的服务器数据地址',
					method: 'GET',
					data: {},
					success: res => {
						console.log(res.data);
						this.Bing = res.data
					},
					fail: () => {},
					complete: () => {}
				});
			}
		}
	};
</script>

<style scoped>
</style>

 折线图以及柱状图也是相同用法。

作者声明:由于本人才疏学浅,本文可能会出现错误,望诸位海涵

如有侵权,请联系作者删除

  • 7
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

殇离黎天

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值