在vue2中用vue-echarts和v-charts绘制百度地图定制散点图

news2024/10/8 14:14:45

一、在vue-echarts中定制百度地图

效果
在这里插入图片描述
准备

  1. 安装依赖 echarts vue-echarts

npm i echarts vue-echarts

  1. 在main.js中引入

import ECharts from “echarts”
import VueECharts from “vue-echarts”
Vue.prototype.$echarts = ECharts
Vue.component(“v-chart”, VueECharts)

  1. 在index.html中引入百度地图2.0 申请秘钥教程

<script
type=“text/javascript”
src=“https://api.map.baidu.com/api?v=2.0&ak=你的百度地图秘钥”
</script>

  1. 在你的页面中引入echarts/bmap

import ‘echarts/extension/bmap/bmap’ // 在echarts中使用百度地图

代码

<template>
    <div class="tempBmap">
        <v-chart :options="options"></v-chart>
    </div>
</template>

<script>
import 'echarts/extension/bmap/bmap' // 在echarts中使用百度地图

const testPoint = [ // 绘制的点数据(实心)
    {
        name: '海门',
        value: [121.15, 31.89, 80]
    },
    {
        name: '南京',
        value: [118.78, 32.84, 100]
    },
    {
        name: '北京',
        value: [116.405338, 39.91513, 200]
    }
]

const testPoint2 = [ // 绘制的点数据(环形)
    {
        name: '上海',
        value: [121.48054, 31.233212, 190]
    },
    {
        name: '西安',
        value: [108.94934, 34.341308, 120]
    }
]
export default {
    name: 'BMap',
    data() {
        return {
            options: {

            }
        }
    },
    mounted() {
        this.options = {
            title: {
                text: '界域的echarts报表统计',
                subtext: '趋势统计',
                sublink: 'https://gitee.com/chengxigitee/data-report',
                left: 'center'
            },
            bmap: {
                key: 'c7GwSbN0GSLjGZ46vpZQPUAKju1nlzpS',
                center: [104.114129, 37.550339],
                zoom: 5,
                roam: true // 地图是否可交互
            },
            tooltip: {},
            series: [ // 定制点
                {
                    name: '销售额', // tip标题
                    type: 'scatter',
                    coordinateSystem: 'bmap', // 坐标系统 百度地图
                    data: testPoint,
                    encode: {
                        value: 2 // 定制tip value
                    },
                    itemStyle: {
                        color: '#0cb4d1', // 点的颜色
                    },
                    symbolSize: function(val) { // 设置点的大小
                        // val: [108.94934, 34.341308, 120]
                        return val[2] / 10
                    },
                    label: {
                        show: false, // 显示value
                        position: 'right',
                        // formatter: '{b}', // 将显示的value改为标题
                        formatter: function(val) {
                            return `${val.data.name} - ${val.data.value[2]}`
                        }
                    },
                    emphasis: {
                        label: {
                            show: true // 将label中的show置为false, 通过在这里的设置,让鼠标移上去再显示label内容
                        }
                    }
                },
                {
                    name: 'top 2', // tip标题
                    type: 'effectScatter',
                    coordinateSystem: 'bmap', // 坐标系统 百度地图
                    data: testPoint2,
                    encode: {
                        value: 2 // 定制tip value
                    },
                    itemStyle: {
                        color: '#0cb4d1', // 点的颜色
                        shadowBlur: 10,
                        shadowColor: '#333'
                    },
                    symbolSize: function(val) { // 设置点的大小
                        // val: [108.94934, 34.341308, 120]
                        return val[2] / 10
                    },
                    label: {
                        show: false, // 显示value
                        position: 'right',
                        // formatter: '{b}', // 将显示的value改为标题
                        formatter: function(val) {
                            return `${val.data.name} - ${val.data.value[2]}`
                        }
                    },
                    emphasis: {
                        label: {
                            show: true // 将label中的show置为false, 通过在这里的设置,让鼠标移上去再显示label内容
                        }
                    },
                    hoverAnimation: true, // 鼠标移动到点上
                    rippleEffect: {
                        brushType: 'stroke' // 波纹样式 空心
                    }
                }
            ]
        }
    }
}
</script>

<style lang="scss" scoped>
.tempBmap {
    width: 100%;
    height: 1000px;
}
</style>

二、在v-charts中绘制百度地图

准备

  1. 安装依赖 echarts v-charts

npm i echarts v-charts

  1. 在main.js中引入

import VCharts from ‘v-charts’
import ‘v-charts/lib/style.css’
Vue.use(VCharts)

代码

<template>
    <div class="tempBmap2">
        <ve-bmap height="100%" :settings="chartSettings" :title="title" :tooltip="{}" :series="chartSeries"></ve-bmap>
    </div>
</template>

<script>

const testPoint = [ // 绘制的点数据(实心)
    {
        name: '海门',
        value: [121.15, 31.89, 80]
    },
    {
        name: '南京',
        value: [118.78, 32.84, 100]
    },
    {
        name: '北京',
        value: [116.405338, 39.91513, 200]
    }
]

const testPoint2 = [ // 绘制的点数据(环形)
    {
        name: '上海',
        value: [121.48054, 31.233212, 190]
    },
    {
        name: '西安',
        value: [108.94934, 34.341308, 120]
    }
]
export default {
    name: 'BMap2',
    data() {
        return {
            title: {
                text: '界域的echarts报表统计',
                subtext: '趋势统计',
                sublink: 'https://gitee.com/chengxigitee/data-report',
                left: 'center'
            },
            chartSettings: {
                key: 'c7GwSbN0GSLjGZ46vpZQPUAKju1nlzpS',
                bmap: {
                    center: [104.114129, 37.550339],
                    zoom: 5,
                    roam: true,
                    mapStyle: {}
                }
            },
            chartSeries: [
                {
                    name: '销售额', // tip标题
                    type: 'scatter',
                    coordinateSystem: 'bmap', // 坐标系统 百度地图
                    data: testPoint,
                    encode: {
                        value: 2 // 定制tip value
                    },
                    itemStyle: {
                        color: '#69392d', // 点的颜色
                    },
                    symbolSize: function (val) { // 设置点的大小
                        // val: [108.94934, 34.341308, 120]
                        return val[2] / 10
                    },
                    label: {
                        show: false, // 显示value
                        position: 'right',
                        // formatter: '{b}', // 将显示的value改为标题
                        formatter: function (val) {
                            return `${val.data.name} - ${val.data.value[2]}`
                        }
                    },
                    emphasis: {
                        label: {
                            show: true // 将label中的show置为false, 通过在这里的设置,让鼠标移上去再显示label内容
                        }
                    }
                },
                {
                    name: 'top 2', // tip标题
                    type: 'effectScatter',
                    coordinateSystem: 'bmap', // 坐标系统 百度地图
                    data: testPoint2,
                    encode: {
                        value: 2 // 定制tip value
                    },
                    itemStyle: {
                        color: '#69392d', // 点的颜色
                        shadowBlur: 10,
                        shadowColor: '#333'
                    },
                    symbolSize: function (val) { // 设置点的大小
                        // val: [108.94934, 34.341308, 120]
                        return val[2] / 10
                    },
                    label: {
                        show: false, // 显示value
                        position: 'right',
                        // formatter: '{b}', // 将显示的value改为标题
                        formatter: function (val) {
                            return `${val.data.name} - ${val.data.value[2]}`
                        }
                    },
                    emphasis: {
                        label: {
                            show: true // 将label中的show置为false, 通过在这里的设置,让鼠标移上去再显示label内容
                        }
                    },
                    hoverAnimation: true, // 鼠标移动到点上
                    rippleEffect: {
                        brushType: 'stroke' // 波纹样式 空心
                    }
                }
            ]
        }
    }
}
</script>

<style lang="scss" scoped>
.tempBmap2 {
    width: 100%;
    height: 1000px;
}
</style>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/443216.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SAS学习第4章:t检验

前话&#xff1a;分析试验数据的差异&#xff0c;一般都会假设样本值之间或者样本与标准值之间无差异&#xff0c;根据不同方法计算得出的t值、q值、F值等等&#xff0c;均表示两者之间的差异程度&#xff0c;值越大&#xff0c;两者差异越大&#xff0c;该假设越不成立&#x…

全网最全的AI绘画提示词网站,看这一篇就够了!

要说2023年什么最火&#xff0c;绝对是以ChatGPT为代表的AI工具了&#xff0c;特别是AI绘画&#xff0c;而用好AI的关键&#xff0c;就是要学会使用关键词&#xff0c;也叫提示词&#xff0c;提示词是AI绘画的核心&#xff0c;本次就给大家分享几个AI绘画关键词网站&#xff0c…

大型Android项目架构:基于组件化+模块化+Kotlin+协程+Flow+Retrofit+Jetpack+MVVM架构实现WanAndroid客户端

前言&#xff1a;苟有恒&#xff0c;何必三更眠五更起&#xff1b;最无益&#xff0c;莫过一日曝十日寒。 前言 之前一直想写个 WanAndroid 项目来巩固自己对 KotlinJetpack协程 等知识的学习&#xff0c;但是一直没有时间。这里重新行动起来&#xff0c;从项目搭建到完成前前…

奇异值分解SVD

概念 奇异值分解&#xff08;singular value decomposition&#xff09;是线性代数中一种重要的矩阵分解。奇异值分解在某些方面与对称矩阵或厄密矩阵基于特征向量的对角化类似。然而这两种矩阵分解尽管有其相关性&#xff0c;但还是有明显的不同。对称矩阵特征向量分解的基础…

数据分析师 ---- SQL强化(1)

文章目录 数据分析师 ---- SQL强化(1)写在前面题目第一步&#xff1a;表连接以及表拼接第二步&#xff1a;新建列以及填充值总结 数据分析师 ---- SQL强化(1) 写在前面 最近在找工作中发现&#xff0c;数据分析师的笔试多数会涉及SQL&#xff0c;但是笔试中SQL的难度和我们在学…

车载软件架构——闲聊几句AUTOSAR BSW(一)

我是穿拖鞋的汉子,魔都中坚持长期主义的工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 人生是用来体验的,不是用来演绎完美的。我慢慢能接受自己身上那些灰暗的部分,原谅自己的迟钝和平庸,允许自己出错,允许自己偶尔断电,带着缺憾拼命绽放,…

Node【初识Node】

文章目录 &#x1f31f;前言&#x1f31f;Node.js&#x1f31f;特性&#xff1a;&#x1f31f;1. 单线程&#x1f31f;2.异步IO&#x1f31f;前端中的异步&#x1f31f;Node中的异步 &#x1f31f;3.跨平台&#x1f31f;4.运行速度快 &#x1f31f; 劣势&#xff1a;&#x1f3…

4/20~4/21两日总结

网络编程 socket通信 socket被翻译为套接字&#xff0c;通过socket这种约定&#xff0c;一台计算机可以接收其他计算机的数据&#xff0c;也可以向其他计算机发送数据 如何实现呢 ServerSocket类能创建Socket的服务端&#xff0c;Socket能创建Socket的客户端 ServerSocket中…

如何运用数字孪生可视化技术实现三维可视化智慧园区

随着城市化的进程和信息化的发展&#xff0c;越来越多的城市拥有了智慧园区这一新的城市形态&#xff0c;通过“互联网”和物联网技术&#xff0c;实现了各种功能部门之间的信息共享与协同&#xff0c;提高了园区服务的质量和效率。然而&#xff0c;如何更好地实现园区管理和运…

LeetCode - 168. Excel表列名称

168. Excel表列名称 给你一个整数 columnNumber &#xff0c;返回它在 Excel 表中相对应的列名称。例如&#xff1a; A -> 1 B -> 2 C -> 3 ... Z -> 26 AA -> 27 AB -> 28 ... 二进制与十进制之间的转换 在做这题之前&#xff0c;先复习一下二进制与十进…

JUC并发编程之读写锁原理

1.图解流程 读写锁用的是同一个 Sycn 同步器&#xff0c;因此等待队列、state等也是同一个 t1 w.lock &#xff0c; t2 r.lock t1 成功上锁&#xff0c;流程与 ReentrantLock 加锁相比没有特殊之处&#xff0c;不同的是写锁状态占了 state 的低 16 位&#xff0c;而读锁使用…

多线程并发编程-线程篇

线程基础 什么是线程&#xff1f; 系统中的一个程序就是一个进程&#xff0c;每个进程中的最基本的执行单位&#xff0c;执行路径就是线程&#xff0c;线程是轻量化的进程。 什么是纤程&#xff1f; 绿色线程&#xff0c;由用户自己进行管理的而不是系统进行管理的&#xf…

【教程类】IDEA 打包 jar 包

最近有点累&#xff0c;写点简单的图文教程的东西来缓解一下 一、你需要知道的基础概念 了解了基础概念之后&#xff0c;可以让我们学习的更快更好哦 ~~ 1. jar JAR&#xff08;Java Archive&#xff09;是Java中一种常用的归档文件格式&#xff0c;也可以被视为一种压缩文…

学生就业统计表案例

主要分为三块&#xff1a; 渲染业务新增业务删除业务 一、根据持久化数据渲染页面 核心步骤: 读取localstorage 本地数据 如果有数据则转换为对象放到变量里面一会使用它渲染页面如果没有则用默认空数组 []为了测试效果&#xff0c;咱们可以先把initData 存入本地存储看效果…

android存储1--device解锁前的流程

android版本&#xff1a;android-11.0.0_r21http://aospxref.com/android-11.0.0_r21/ 一、主用户primary user的创建 开机后kernel启动第一个用户态进程init&#xff0c;init进程fork出zygote进程。zygote又fork出system server进程。http://aospxref.com/android-11.0.0_r2…

垃圾收集器面试总结(一)

垃圾收集器 Serial 收集器&#xff08;GC日志标识&#xff1a;DefNew&#xff09; Serial&#xff08;串行&#xff09;收集器是最基本、历史最悠久的垃圾收集器了。大家看名字就知道这个收集器是一个单线程收集器了。 它的 “单线程” 的意义不仅仅意味着它只会使用一条垃圾…

[比赛简介]BirdCLEF-2023

比赛链接&#xff1a;BirdCLEF 2023 | Kaggle 比赛简介 鸟类是生物多样性变化的极好指标&#xff0c;因为它们具有高度流动性并且具有不同的栖息地要求。因此&#xff0c;物种组合和鸟类数量的变化可以表明恢复项目的成败。然而&#xff0c;经常在大面积地区进行传统的基于观…

你的车有通风座椅吗?新款奔驰S400升级原厂主副驾座椅通风

大家好&#xff0c;我是奔之升小志&#xff08;bzs878&#xff09;&#xff0c;专注名车原厂升级&#xff0c;欢迎戳戳右上角“”号关注一下&#xff0c;持续为您带来精彩改装案例。 座椅通风有什么用&#xff1f;能改善身体与座椅接触面空气流通&#xff0c;达到不出汗的效果…

Linux网络服务----SSH

文章目录 一 、SSH服务1.1 什么是SSH服务器&#xff1f;1.2 常用的SSH软件的介绍 二 、ssh的运用2.1 存放ssh服务端的配置文件2.2 ssh在Linux中的密码登录2.3 利用ssh协议传输文件和获取文件2.4 sftp远程访问操作 三 、 ssh密钥登录操作四 、TCP_wapper的原理和运用4.1 TCP_wap…

IP-GUARD能否实现打印指定文件时需经过管理员审批后才能打印?

支持。先设置禁止打印文档的策略,然后设置相关审批流程,再给到客户端相应的申请权限: 1、在控制台-高级-打印控制策略中,给需要进行打印管控的客户端设置以下策略: 动作:禁止 2、在控制台-申请管理-桌面申请管理-审批流程管理中,添加申请类型为打印的审批流程,指定审批人…