nuxt.js引入echarts旋转地球
时间: 2023-10-06 14:08:29 浏览: 149
js实现的旋转地球demo
4星 · 用户满意度95%
要在Nuxt.js中引入echarts旋转地球,需要执行以下步骤:
1. 安装echarts和echarts-gl
通过npm或yarn安装echarts和echarts-gl:
```
npm install echarts echarts-gl
```
或者
```
yarn add echarts echarts-gl
```
2. 创建组件
在components文件夹中创建一个新的组件,例如Earth.vue,并在其中添加以下代码:
```
<template>
<div ref="chart" style="height: 500px;"></div>
</template>
<script>
import echarts from 'echarts'
import 'echarts-gl'
export default {
mounted () {
this.chart = echarts.init(this.$refs.chart)
this.chart.setOption({
globe: {
baseTexture: '/earth.jpg',
heightTexture: '/bathymetry_bw_composite_4k.jpg',
displacementScale: 0.075,
shading: 'realistic',
environment: '/starfield.jpg',
realisticMaterial: {
roughness: 0.2,
metalness: 0,
textureTiling: [8, 4]
},
postEffect: {
enable: true,
SSAO: {
enable: true,
radius: 2,
intensity: 1.5,
quality: 'high'
}
},
light: {
main: {
intensity: 5,
shadow: true
},
ambient: {
intensity: 0
},
ambientCubemap: {
texture: '/lightmap.hdr',
exposure: 1,
diffuseIntensity: 0.5,
specularIntensity: 2
}
}
},
series: [
{
type: 'lines3D',
coordinateSystem: 'globe',
data: [
[
{
coord: [113.8953, 22.901],
value: 100
},
{
coord: [2.3412, 48.8566]
}
],
[
{
coord: [113.8953, 22.901],
value: 100
},
{
coord: [-74.0059, 40.7128]
}
],
[
{
coord: [113.8953, 22.901],
value: 100
},
{
coord: [139.6917, 35.6895]
}
]
],
lineStyle: {
width: 1,
color: '#00ffff'
}
}
]
})
this.chart.setOption({
globe: {
viewControl: {
autoRotate: true,
autoRotateAfterStill: 10,
distance: 200
}
}
})
},
beforeDestroy () {
if (this.chart) {
this.chart.dispose()
this.chart = null
}
}
}
</script>
<style>
@import url('https://cdn.jsdelivr.net/npm/echarts-gl/dist/echarts-gl.min.css');
body {
margin: 0;
}
* {
box-sizing: border-box;
}
</style>
```
3. 测试
在页面中使用新创建的组件:
```
<template>
<div>
<Earth />
</div>
</template>
<script>
import Earth from '@/components/Earth.vue'
export default {
components: {
Earth
}
}
</script>
```
保存并运行应用程序,地球应该开始旋转。
阅读全文