Vue2项目中echarts 导入地区.json文件生成中国地图

一、提前准备

1、在项目中安装 echarts
npm install echarts

或者: 

npm install echarts --save
2、引入 echarts 图表,可全局或按需引入。

 在项目中引入 ECharts - 入门篇 - 使用手册 - Apache ECharts

安装完后这里建议直接在main.js里面引入并绑定在Vue原型上,因为可以不用每次在别的组件里面使用echarts的时候都要 import echarts from 'echarts'

具体方法就是:

​ 1、在main.js中引入echarts :import * as echarts from 'echarts'

​ 2、绑定到原型上 :Vue.prototype.$echarts = echarts

​ 以后需要用的时候就是直接 : this.$echarts

3、提前下载好需要的.json文件,例如我在下面用到的是,中国的地图文件 china.json

二、页面渲染数据

1、创建dom元素
<template>
  <div id="map" style = "width:800px;height:600px"></div>
</template>
2、初始化数据和渲染

引入china.json文件

初始化:let myCharts = this.$echarts.init(document.getElementById('map'))

     var option = {}

直接给 option 添加属性,让它可以读取地图数据

最后渲染 echarts , myCharts.setOption(option)即可。

<script> 
import china from '@/utils/china.json'
export default {
  name: 'map',
  data() {
    return {
      // option 也可以在这里定义
    }
  },
  mounted() {
    this.$echarts.registerMap('china', china)
    let myCharts = this.$echarts.init(document.getElementById('map'))
    var option = {
        geo: {
          type: 'map',
          map: 'china',
          roam: true,
          zoom: 1.2,
          label: {
            show: true,
          }
        },
    }
    myCharts.setOption(option)
  }

}
</script>
3、Demo -----这里可以设置一些配置项参数
<script>
import china from '@/utils/china.json'
export default {
  name: 'map',
  data() {
    return {
      // 为每个省份设置颜色的映射
      provinceColors: {
        '北京': '#ff6347',
        '天津': '#87cefa',
        '上海': '#98fb98',
        '重庆': '#f0e68c',
        '新疆': '#95249b',
        '西藏': '#793229',
        '青海': '#40b883',
        '甘肃': '#e44d27',
        '内蒙古': '#6d6725',
        '黑龙江': '#cbb71f',
        '四川': '#0a551c',
        '云南': '#06930d',
        '宁夏': '#d2a8ff',
        '山西': '#030380',
        '贵州': '#856841',
        '山东': '#fcb957',
        '湖北': '#474747',
        '湖南': '#f0e68c',
        '广西': '#f0e68c',
        '广东': '#f0e68c',
        // 可以继续添加其他省份的颜色
      }
    }
  },
  mounted() {
    this.$echarts.registerMap('china', china)
    let myCharts = this.$echarts.init(document.getElementById('map'))
    var option = {
      geo: {
        type: 'map',
        map: 'china',
        roam: true,// 允许能对地图进行缩放、拖动 的操作
        zoom: 1.2,// 地图按比例显示 ,例如 填 2 就是放大 2倍 显示 
        label: {
          show: true,// 展示各地区名称
        },

        // 设置每个省份的颜色
        regions: Object.keys(this.provinceColors).map(province => ({
          name: province,  // 省份名称
          itemStyle: {
            areaColor: this.provinceColors[province],  // 设置颜色
            borderColor: '#0da1e1',  // 边框颜色
            borderWidth: 1,  // 边框宽度
          },
        }))
      },
    }
    myCharts.setOption(option)
  }

}
</script>
4、效果图

三、推荐好用网址

Apache ECharts

https://blog.youkuaiyun.com/qq_45066453/article/details/129479541?ops_request_misc=%257B%2522request%255Fid%2522%253A%25220376dddcbdaa20b5dd59aecbc9ab03e6%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=0376dddcbdaa20b5dd59aecbc9ab03e6&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_click~default-2-129479541-null-null.142^v100^pc_search_result_base6&utm_term=%E4%B8%AD%E5%9B%BD%E5%9C%B0%E5%9B%BE&spm=1018.2226.3001.4187文章浏览阅读7.2w次,点赞87次,收藏354次。使用Echarts绘制中国地图,其中地图点信息由JSON文件编写,前端html直接从JSON文件中读取地区数据,渲染到前端即可。详细介绍用到的各个功能!代码直接复制运行即可!_echarts中国地图https://blog.youkuaiyun.com/qq_45066453/article/details/129479541?ops_request_misc=%257B%2522request%255Fid%2522%253A%25220376dddcbdaa20b5dd59aecbc9ab03e6%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=0376dddcbdaa20b5dd59aecbc9ab03e6&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_click~default-2-129479541-null-null.142^v100^pc_search_result_base6&utm_term=%E4%B8%AD%E5%9B%BD%E5%9C%B0%E5%9B%BE&spm=1018.2226.3001.4187

<think>嗯,用户遇到了npm install时出现"package.json not exists"警告的问题,需要我提供解决方法。根据引用[1]的内容,这个警告的核心原因是当前目录下缺少package.json文件。 用户提供的路径是"E:\computer\前端\Vue\NewVue\package.json",看起来是个Vue项目。用户可能刚创建项目或者移动了项目位置。考虑到用户是前端开发者,应该熟悉命令行操作,但可能忽略了工作目录的问题。 用户引用的四个文献中,只有[1]直接相关,其他都是关于不同错误的解决方案,比如node-sass安装失败、日志文件位置、vue-echarts导入问题等。这些虽然都是npm相关错误,但和当前问题无关。 解决方法很明确:需要确保在包含package.json的目录下运行npm install。用户可能犯了两个常见错误:一是在错误目录打开终端,二是项目本身缺少package.json文件。 对于第一种情况,只需要cd到正确目录即可。第二种情况则需要先初始化项目。考虑到用户项目路径包含"NewVue",很可能是新建项目,所以重点提醒用户先确认目录结构和初始化步骤。 同时注意到用户的路径包含中文目录"前端",这在Windows系统虽然允许,但有时可能引发意外问题。不过当前错误与此无关,暂时不需要特别提醒。 最后补充的相关问题都是npm常见错误,选择这些是因为它们经常伴随目录错误发生,用户可能接下来会遇到。 </think>根据引用[1]的核心原理分析,`npm install`出现`package.json not exists`警告的本质原因是:**当前终端工作目录下缺少package.json文件**。以下是系统化解决方案: ### 解决方法 1. **切换工作目录(核心步骤)** ```bash cd E:\computer\前端\Vue\NewVue # 切换到包含package.json项目根目录 npm install # 在正确目录执行安装 ``` *执行后警告将消失,因为npm此时能定位到package.json* 2. **若目录无package.json(需初始化)** ```bash cd E:\computer\前端\Vue\NewVue npm init -y # 生成package.json npm install # 安装依赖 ``` 3. **验证文件存在性** ```bash dir package.json # Windows查看文件 ls package.json # macOS/Linux查看 ``` ### 关键原理图解 ```mermaid graph LR A[终端当前路径] --> B{存在 package.json?} B -- 是 --> C[正常安装依赖] B -- 否 --> D[触发警告] D --> E[切换到项目根目录] E --> C ``` ### 典型错误场景分析 | 场景 | 终端路径 | 实际项目路径 | 结果 | |------|----------|--------------|------| | 正确 | `E:\...\NewVue` | `E:\...\NewVue` | ✅安装成功 | | 错误 | `E:\computer` | `E:\...\NewVue` | ❌警告触发 | > **重要提示**:引用[2][3][4]提到的`node-sass`安装失败、日志文件位置或`vue-echarts`导入问题与本警告无关,它们是独立的技术问题[^1][^2][^3][^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值