Table of Contents
Create a new angular9 project
Download echarts
Create container
Create map instance
Home Web Front-end JS Tutorial A brief discussion on using angular9+echarts to draw 3D maps

A brief discussion on using angular9+echarts to draw 3D maps

Mar 25, 2021 am 11:37 AM

This article will share with you the usage of echarts in angular and introduce the method of drawing 3D maps. It has certain reference value. Friends in need can refer to it. I hope it will be helpful to everyone.

A brief discussion on using angular9+echarts to draw 3D maps

Create a new angular9 project

1. Install @angular-cli scaffolding

2. <strong>ng -v</strong>View version

3、ng new my-project(project name)

Download echarts

1

npm i echarts

Copy after login

Related recommendations: "angular tutorial"

Create container

src/app/app. componnet.html

1

<div id="main" style="width:800px;height:500px"></div>

Copy after login

Create map instance

src/app/app.componnet.ts

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

import { Component } from &#39;@angular/core&#39;;

import * as echarts from "echarts";

import  &#39;echarts/map/js/china.js&#39;

@Component({

  selector: &#39;app-root&#39;,

  templateUrl: &#39;./app.component.html&#39;,

  styleUrls: [&#39;./app.component.scss&#39;]

})

export class AppComponent {

  option = {

    title: {

        top: 10,

        text: &#39;3D中国地图&#39;,

        left: &#39;center&#39;,

        textStyle: {

            color: &#39;#fff&#39;

        }

    },

    backgroundColor: &#39;rgba(0, 10, 52, 1)&#39;,

    geo: {

        map: &#39;china&#39;,

        aspectScale: 0.75,

        layoutCenter: ["50%", "51.5%"], //地图位置

        layoutSize: &#39;118%&#39;,

        roam: true,

        itemStyle: {

            normal: {

                borderColor: &#39;rgba(147, 235, 248, 1)&#39;,

                borderWidth: 0.5,

                color: {

                    type: &#39;linear-gradient&#39;,

                    x: 0,

                    y: 1500,

                    x2: 2500,

                    y2: 0,

                    colorStops: [{

                        offset: 0,

                        color: &#39;#009DA1&#39; // 0% 处的颜色

                    }, {

                        offset: 1,

                        color: &#39;#005B9E&#39; // 50% 处的颜色

                    }],

                    global: true // 缺省为 false

                },

                opacity: 0.5,

            },

            emphasis: {

                areaColor: &#39;#2a333d&#39;

            }

        },

        regions: [{

            name: &#39;南海诸岛&#39;,

            itemStyle: {

                areaColor: &#39;rgba(0, 10, 52, 1)&#39;,

                borderColor: &#39;rgba(0, 10, 52, 1)&#39;

            },

            emphasis: {

                areaColor: &#39;rgba(0, 10, 52, 1)&#39;,

                borderColor: &#39;rgba(0, 10, 52, 1)&#39;

            }

        }],

        z: 2

    },

    series: [{

        type: &#39;map&#39;,

        map: &#39;china&#39;,

        tooltip: {

            show: false

        },

        label: {

            show: true,

            color: &#39;#FFFFFF&#39;,

            fontSize: 16

        },

        aspectScale: 0.75,

        layoutCenter: ["50%", "50%"], //地图位置

        layoutSize: &#39;118%&#39;,

        roam: true,

        itemStyle: {

            normal: {

                borderColor: &#39;rgba(147, 235, 248, 0.6)&#39;,

                borderWidth: 0.8,

                areaColor: {

                    type: &#39;linear-gradient&#39;,

                    x: 0,

                    y: 1200,

                    x2: 1000,

                    y2: 0,

                    colorStops: [{

                        offset: 0,

                        color: &#39;#009DA1&#39; // 0% 处的颜色

                    }, {

                        offset: 1,

                        color: &#39;#005B9E&#39; // 50% 处的颜色

                    }],

                    global: true // 缺省为 false

                },

            },

            emphasis: {

                areaColor: &#39;rgba(147, 235, 248, 0)&#39;

            }

        },

        zlevel: 1

    }]

};

 

  ngOnInit(){

    let dom = document.getElementById(&#39;main&#39;)

    let myChart = echarts.init(dom)

    myChart.on(&#39;georoam&#39;, function(params) {

      var option = myChart.getOption(); //获得option对象

      if (params.zoom != null && params.zoom != undefined) { //捕捉到缩放时

          option.geo[0].zoom = option.series[0].zoom; //下层geo的缩放等级跟着上层的geo一起改变

          option.geo[0].center = option.series[0].center; //下层的geo的中心位置随着上层geo一起改变

      } else { //捕捉到拖曳时

          option.geo[0].center = option.series[0].center; //下层的geo的中心位置随着上层geo一起改变

      }

      myChart.setOption(option); //设置option

  });

    myChart.setOption(this.option)

  }

}

Copy after login

Effect picture

A brief discussion on using angular9+echarts to draw 3D maps

For more programming related knowledge, please visit: Programming Video! !

The above is the detailed content of A brief discussion on using angular9+echarts to draw 3D maps. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot Article

Hot tools Tags

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Replace String Characters in JavaScript Replace String Characters in JavaScript Mar 11, 2025 am 12:07 AM

Replace String Characters in JavaScript

jQuery Check if Date is Valid jQuery Check if Date is Valid Mar 01, 2025 am 08:51 AM

jQuery Check if Date is Valid

jQuery get element padding/margin jQuery get element padding/margin Mar 01, 2025 am 08:53 AM

jQuery get element padding/margin

Top 5 Date Manipulation JS Plugins Top 5 Date Manipulation JS Plugins Feb 28, 2025 am 12:34 AM

Top 5 Date Manipulation JS Plugins

10 Worth Checking Out jQuery Plugins 10 Worth Checking Out jQuery Plugins Mar 01, 2025 am 01:29 AM

10 Worth Checking Out jQuery Plugins

10 jQuery Accordions Tabs 10 jQuery Accordions Tabs Mar 01, 2025 am 01:34 AM

10 jQuery Accordions Tabs

jquery add scrollbar to div jquery add scrollbar to div Mar 01, 2025 am 01:30 AM

jquery add scrollbar to div

Custom Google Search API Setup Tutorial Custom Google Search API Setup Tutorial Mar 04, 2025 am 01:06 AM

Custom Google Search API Setup Tutorial

See all articles