Visualization method, visualization device and visualization system
By pre-storing the spatial element set in the pixel coordinate system at the maximum level of the vector tile, and performing coordinate shrinkage and translation operations, the requested vector tile is generated, which solves the problem that the prior art cannot support data updates and visualization of large data volumes at the same time, and achieves efficient response speed and concurrency volume support.
Patent Information
- Application Number
- CN202311748031.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-12-19
- Publication Date
- 2025-06-20
AI Technical Summary
The existing dynamic vector slicing and static vector slicing technologies cannot support data updates and visual display requirements of large data volumes, and the response speed and concurrency volume support are insufficient.
By pre-obtaining and storing the spatial elements set in the pixel coordinate system of the largest level of the vector tile, the spatial elements within the corresponding pixel range of the requested vector tile are determined by querying the storage information, and coordinate shrinkage and translation operations are performed to generate the requested vector tile for display.
The slice-free solution is implemented, which improves the response speed and the amount of concurrency supported, and can better meet the needs of simultaneously supporting data updates and visual display of large data volumes.
Smart Images

Figure CN120179841A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the computer field, in particular to the visualization field, and more particularly to a visualization method, a visualization device, and a visualization system. Background Art
[0002] Vector tiles (also referred to as tiles) are a standard storage format for vector data in map visualization and are widely used in map visualization applications.
[0003] The process of generating vector tiles for a set of spatial features represented by spherical coordinates is called vector slicing. Vector slicing can be divided into dynamic vector slicing and static vector slicing. These two slicing strategies have their own advantages and disadvantages and are used in different scenarios.
[0004] Figure 1 The schematic diagram of the principle of dynamic vector slicing and static vector slicing is shown. The input of both slicing strategies are spatial features stored in the spatial database.
[0005] For the dynamic slicing strategy, the slicing server will generate a corresponding spatial range based on the tile coordinates requested by the client, and then use the spatial range to query the spatial elements in the database, convert the queried spatial elements into pixel coordinates, and then encode them to obtain vector tiles (i.e. dynamic tiles) and return them to the client.
[0006] For the static slicing strategy, the spatial elements in the database will be sliced in advance to generate vector tiles of all levels, and the vector tiles (i.e. static tiles) will be stored in the Object Storage Service (OSS). The client can determine the uniform resource address (URL) of the tile in OSS based on the coordinates of the tile and directly request the tile from OSS.
[0007] The following is a comparison of the differences between these two slicing strategies.
[0008] (1) Different support for data updates. Dynamic vector slicing is a vector slicing that is performed only when the client initiates a request. The tiles store the latest spatial elements in the database, and any changes to the spatial elements in the database will be displayed in a timely manner on the visualization interface. Static vector slicing, on the other hand, is a vector tile that is pre-generated before the request is made, and cannot visualize the most recently added or modified geographic elements in the database.
[0009] (2) Different storage spaces are occupied. The dynamic vector slicing strategy does not need to save vector tiles. When the client initiates a request, vector tiles are generated in real time and returned to the client. The life cycle of a vector tile is limited to one tile request. Static vector slicing stores pre-cut vector tiles in OSS. When the client initiates a request, the vector tiles are directly returned. The stored vector tiles are always valid and can be reused.
[0010] (3) The response speed of the request and the supported concurrency are different. Dynamic vector slicing needs to perform the calculation of vector tile generation when requesting, which is time-consuming, so the response speed is slower. Since the calculation needs to be performed on the server, when the number of concurrent client accesses is large, the server's computing pressure will be very high. Therefore, the supported request concurrency in the dynamic vector slicing strategy is not high. On the contrary, the static vector slicing strategy directly returns the tile when requesting, without calculation, so the response speed is fast and the supported concurrency is large.
[0011] Based on the analysis of the above differences, we can clarify the applicable scenarios of these two slicing strategies, as shown in Table 1. Dynamic vector slicing is suitable for scenarios with small data volume, frequent data changes (additions, deletions, and modifications), and low concurrent request numbers, such as visualizing the current location of a taxi (the location changes over time, but the data volume is not large). Static vector slicing is suitable for scenarios with large data volume, constant data changes, and high concurrent request numbers, such as base map data in visualization (rivers, lakes, green spaces, roads, buildings, etc.).
[0012] Table 1 Advantages, disadvantages and applicable scenarios of the two vector tiling strategies
[0013]
[0014] In some visualization scenarios, according to the business needs of visualization, it is hoped to support both data updates and large data volumes. However, current related visualization technologies, such as dynamic vector slicing and static vector slicing, cannot take into account and meet this demand. Summary of the invention
[0015] The disclosed embodiment obtains and stores in advance a set of spatial elements represented by pixel coordinates in a pixel coordinate system of the maximum level of a vector tile, and subsequently determines the spatial elements within the pixel range corresponding to the requested vector tile by querying the stored information. Then, simple operations such as coordinate contraction and coordinate translation are performed on the spatial elements to generate the requested vector tile for display. Neither the complex and time-consuming operations of two coordinate transformations of dynamic vector slicing nor the pre-slicing of static vector slicing and the storage of vector tiles of all levels are required, thereby realizing a slicing-free solution, improving the response speed and the amount of concurrency supported, and better meeting the requirements of simultaneously supporting data updates and visualization displays of large amounts of data.
[0016] Some embodiments of the present disclosure provide a visualization method, including: receiving coordinate information of a first vector tile requested by a client, including a first level where the first vector tile is located, a row number and a column number of the first vector tile in the first level; determining, according to the coordinate information of the first vector tile, a first pixel range corresponding to the first vector tile in a pixel coordinate system of a maximum level of vector tiles; querying a set of spatial features represented by pixel coordinates in the pixel coordinate system of the maximum level of stored vector tiles to obtain a first spatial feature within the first pixel range; performing coordinate contraction and / or coordinate translation on the first spatial feature to obtain first spatial data of the first spatial feature in a tile coordinate system; forming a first vector tile based on the first spatial data and returning it to the client for display.
[0017] In some embodiments, performing coordinate contraction and / or coordinate translation on the first spatial feature includes: determining a displacement amount according to the maximum level and the first level, and displacing each coordinate point in the first spatial feature by the displacement amount for the first pixel coordinate in the pixel coordinate system of the maximum level of vector tiles to obtain a second pixel coordinate after contraction; and / or through coordinate translation, transforming the second pixel coordinate with the origin of the pixel coordinate system as the origin to a third pixel coordinate with a corner point of the vector tile as the origin in the tile coordinate system to obtain the first spatial data.
[0018] In some embodiments, displacing each coordinate point in the first spatial feature by the displacement amount for the first pixel coordinate in the pixel coordinate system of the maximum level of vector tiles includes: shifting the number of binary digits of each coordinate point in the first spatial feature for the first pixel coordinate in the pixel coordinate system of the maximum level of vector tiles to the right by the shift amount to obtain a second pixel coordinate after contraction.
[0019] In some embodiments, the displacement amount is the difference between the maximum level and the first level.
[0020] In some embodiments, transforming the second pixel coordinate with the origin of the pixel coordinate system as the origin to a third pixel coordinate with a corner point of the vector tile as the origin in the tile coordinate system includes: subtracting the product of the row number of the first vector tile in the first level and the size of the vector tile from the abscissa of the second pixel coordinate with the origin of the pixel coordinate system as the origin to obtain the abscissa of the third pixel coordinate; subtracting the product of the column number of the first vector tile in the first level and the size of the vector tile from the ordinate of the second pixel coordinate with the origin of the pixel coordinate system as the origin to obtain the column coordinate of the third pixel coordinate.
[0021] In some embodiments, the maximum level of vector tiles is an integer between 20 and 25.
[0022] In some embodiments, determining a first pixel range in a pixel coordinate system of a maximum level of a vector tile corresponding to a first vector tile according to coordinate information of the first vector tile includes: in order from a first level to the maximum level, for each adjacent upper and lower level between the first level and the maximum level, if the number of the vector tile in the pixel coordinate system of the upper level corresponding to the first vector tile is z′, determining that the numbers of the vector tiles in the pixel coordinate system of the lower level corresponding to the first vector tile are z′×4, z′×4 + 1, z′×4 + 2, z′×4 + 3, until determining the first pixel range in the pixel coordinate system of the maximum level of the vector tile corresponding to the first vector tile.
[0023] In some embodiments, it further includes: converting geographical coordinates of a set of spatial elements represented by geographical coordinates into projected coordinates, and then converting the projected coordinates into pixel coordinates in a pixel coordinate system of a maximum level of a vector tile, so as to obtain and store in advance a set of spatial elements represented by pixel coordinates in the pixel coordinate system of the maximum level of the vector tile.
[0024] In some embodiments, it further includes: determining a first time range corresponding to a first level where the first vector tile is located; the obtaining of the first spatial elements within the first pixel range includes: querying the stored set of spatial elements represented by pixel coordinates in the pixel coordinate system of the maximum level of the vector tile to obtain the first spatial elements within the first time range and within the first pixel range.
[0025] In some embodiments, a spatio-temporal pyramid model includes a vector pyramid model and time ranges corresponding to each level added in the vector pyramid model, and the smaller the level, the smaller the time range corresponding to the level; wherein: using the spatio-temporal pyramid model, determining a first pixel range in a pixel coordinate system of a maximum level of a vector tile corresponding to the first vector tile, and determining a first time range corresponding to a first level where the first vector tile is located.
[0026] In some embodiments, the first vector tile includes at least one of a first vector tile of spatial data and a first vector tile of spatio-temporal data.
[0027] In some embodiments, the first vector tile includes a first vector tile of a map and a first vector tile of moving object trajectory data.
[0028] Some embodiments of the present disclosure propose a visualization device, including: a memory; and a processor coupled to the memory, the processor being configured to execute a visualization method based on instructions stored in the memory.
[0029] Some embodiments of the present disclosure propose a visualization device, including: a module for executing a visualization method.
[0030] Some embodiments of the present disclosure provide a visualization system, including: a client configured to send a request for a first vector tile, carrying coordinate information of the requested first vector tile, including a first level where the first vector tile is located, a row number and a column number of the first vector tile in the first level, and receive the returned first vector tile and display it; a visualization device configured to execute a visualization method.
[0031] Some embodiments of the present disclosure provide a computer-readable storage medium, on which a computer program is stored, and when the program is executed by a processor, the steps of the visualization method are implemented. BRIEF DESCRIPTION OF THE DRAWINGS
[0032] The following will briefly introduce the drawings required for use in the embodiments or related technical descriptions. The present disclosure can be more clearly understood according to the following detailed description with reference to the drawings.
[0033] Obviously, the drawings in the following description are only some embodiments of the present disclosure. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.
[0034] Figure 1 A schematic diagram showing the principles of dynamic vector tiles and static vector tiles.
[0035] Figure 2 A schematic diagram showing the spatial attributes of spatial elements.
[0036] Figure 3 A schematic diagram showing the Web Mercator spatial projection coordinate system and the pixel coordinate system.
[0037] Figure 4 A schematic diagram showing the vector pyramid model.
[0038] Figure 5 A schematic diagram showing the coordinates and numbers of vector tiles.
[0039] Figure 6 A schematic diagram showing the coordinate conversion process of vector tiles.
[0040] Figure 7 A schematic diagram showing the matching of spatial elements to vector tiles.
[0041] Figure 8 A schematic diagram showing the flow of the visualization method of the slice-free strategy in some embodiments of the present disclosure.
[0042] Figure 9 A schematic diagram showing the spatio-temporal pyramid model in some embodiments of the present disclosure.
[0043] Figure 10Flow schematic diagram of a visualization method for a slicing-free strategy showing some embodiments of the present disclosure.
[0044] Figure 11 Structural schematic diagram of a visualization device showing some embodiments of the present disclosure.
[0045] Figure 12 Structural schematic diagram of a visualization device showing some embodiments of the present disclosure.
[0046] Figure 13 Structural schematic diagram of a visualization system showing some embodiments of the present disclosure. Detailed implementation manners
[0047] It should be noted that: Unless otherwise specifically stated, the relative arrangements of components and steps, numerical expressions and values set forth in these embodiments do not limit the scope of the present disclosure.
[0048] Those skilled in the art can understand that terms such as "first", "second", etc. in the embodiments of the present disclosure are only used to distinguish different steps, devices or modules, etc., and do not represent any specific technical meaning nor indicate an inevitable logical order between them.
[0049] It should also be understood that in the embodiments of the present disclosure, "a plurality of" may refer to two or more, and "at least one" may refer to one, two or more.
[0050] It should also be understood that for any component, data or structure mentioned in the embodiments of the present disclosure, without clear definition or contrary indication in the context, it can generally be understood as one or more.
[0051] In addition, the term "and / or" in the present disclosure is merely a description of the association relationship of associated objects, indicating that there can be three relationships. For example, A and / or B can represent: A exists alone, A and B exist simultaneously, and B exists alone. In addition, the character " / " in the present disclosure generally represents an "or" relationship between the associated objects before and after.
[0052] It should also be understood that the present disclosure emphasizes the differences between various embodiments, and their similarities can be referred to each other. For the sake of brevity, they will not be elaborated one by one.
[0053] Meanwhile, it should be understood that for the sake of description, the dimensions of each part shown in the drawings are not drawn according to the actual proportional relationship.
[0054] The following description of at least one exemplary embodiment is merely illustrative in nature and in no way limits the present disclosure, its application or use.
[0055] Technologies, methods, and devices that are known to those of ordinary skill in the relevant art may not be discussed in detail, but where appropriate, such technologies, methods, and devices should be regarded as part of the specification.
[0056] It should be noted that like reference numerals and letters refer to like items in the following figures, and thus, once an item is defined in one figure, further discussion thereof is not required in subsequent figures.
[0057] In addition, to avoid obscuring the present disclosure with unnecessary details, only the processing steps and / or device structures that are closely related to at least the solution according to the present disclosure are shown in the figures, while other details that are less relevant to the present disclosure are omitted. It should also be noted that like reference numerals and letters in the figures indicate like items, and thus once an item is defined in one figure, further discussion thereof is not required for subsequent figures.
[0058] Some terms are explained below.
[0059] A spatial feature is composed of a spatial attribute geom and multiple non-spatial attributes. The spatial attribute geom represents the spatial information of the feature, and its types include Point, LineString, Polygon, MultiPoint, MultiLineString, and MultiPolygon, etc., as Figure 2 shown. A spatial feature can be represented as sf = <geom, others>, where geom represents the spatial attribute of the spatial feature and others represents the non-spatial attributes of the spatial feature. Spatial features are also known as vector data.
[0060] Spatial features are represented using coordinate points, and the coordinate points have corresponding spatial coordinate systems. When visualizing maps, the most commonly used is the Web Mercator spatial projection coordinate system (abbreviated as Web Mercator coordinate system or projection coordinate system). This coordinate system projects the spatial features on the sphere onto a square plane, as Figure 3 shown in the left figure in. For the convenience of display on the display screen, the coordinates of the spatial features stored in the vector tiles are pixel coordinates. A pixel is the smallest granularity of visualization and corresponds to a small square in the pixel coordinate system, as Figure 3 shown in the right figure in.
[0061] For spatial features within a small square range in a projected coordinate system, their projected coordinates are converted into pixel coordinates in the pixel coordinate system to obtain spatial features represented by pixel coordinates. These spatial features in the pixel coordinate system are encoded into a binary file (.pbf) to obtain a vector tile (referred to as a tile for short). The higher the resolution of the pixel coordinate system (the more pixels), the more complete the details of the spatial features in the vector tile will be retained. The encoding specification of the vector tile can refer to the encoding specification proposed by MapBox.
[0062] To meet the visualization effects of different granularities, it is necessary to display spatial features in hierarchical levels, for example, the levels range from 0 to n. At the i-th (0 ≤ i ≤ n) level, the entire projected coordinate system is evenly divided into 2 i parts in the horizontal and vertical directions, for a total of 4 i grids. Each grid corresponds to a square pixel range in the pixel coordinate system, called a pixel matrix. The spatial features within the grid are projected into the corresponding pixel matrix to obtain spatial features represented by pixel coordinates. These spatial features are encoded to form a vector tile, and then the vector tiles of all levels are organized according to the Figure 4 shown hierarchical structure, resembling a pyramid. Therefore, the set of vector tiles is called a vector pyramid model.
[0063] To facilitate representing the position of a vector tile in the vector pyramid, the coordinates of the vector tile are defined as T = <rowNum, colNum, zoomLevel>. zoomLevel (0 ≤ zoomLevel ≤ n) represents the level where the vector tile is located, and rowNum (0 ≤ rowNum < 2 zoomLevel ) and colNum (0 ≤ colNum < 2 zoomLevel ) represent the row number and column number of the vector tile at this level respectively, as shown in Figure 5 . In addition, within any level i, all tiles are numbered from 0 to 4 i -1 using the Z - space filling curve (Z - curve), as shown in Figure 5 . The numbering rule is as follows: Let the number of the vector tile t at level i be z′. Then the spatial range represented by t is represented by 4 vector tiles at level i + 1, and the numbers of these 4 vector tiles are z′×4, z′×4 + 1, z′×4 + 2, z′×4 + 3 respectively. As shown in the gray tiles in the level with zoomLevel = 1 and the level with zoomLevel = 2 in Figure 5 .
[0064] In some visualization scenarios, according to the business requirements of visualization, it is desired to support both data updates and large data volumes. However, current related visualization technologies, such as dynamic vector slicing and static vector slicing, still cannot balance and meet this requirement.
[0065] The present disclosure proposes a slicing-free solution for visualizing spatio-temporal data or spatial data. This solution combines the advantages of dynamic vector slicing and static vector slicing, and can well support the visual display of spatio-temporal data or spatial data with large data volume and frequent data updates. In addition, the present disclosure also proposes a spatio-temporal pyramid model based on the vector pyramid model to display the movement trajectory of a moving object over a period of time.
[0066] To facilitate the comparison between the dynamic vector slicing solution and the slicing-free solution of the present disclosure, the two solutions are described separately below.
[0067] For a vector tile request initiated by a client, assuming the coordinates of the vector tile in the vector pyramid are <x, y, z>, where x is the column number colNum, y is the row number rowNum, and z is the zoom level where the vector tile is located, the execution process of dynamic vector slicing is as follows.
[0068] (1) Data query process. Determine the spatial range corresponding to the tile according to the tile coordinates, and then use this spatial range as a spatial query condition to query the spatial features in the database to obtain the spatial features belonging to the tile.
[0069] (2) Coordinate conversion process. Spatial features are usually stored in geographic coordinates (i.e., coordinates in the geographic coordinate system, also called spherical coordinates) in the database of dynamic slicing, while vector tiles are based on projected coordinates (plane coordinates). Therefore, it is necessary to first convert the geographic coordinates of the spatial features into projected coordinates, and then convert the projected coordinates into pixel coordinates in the pixel coordinate system. The coordinate conversion process is as Figure 6 shown. It can be seen that the number of pixels in the pixel coordinate system is closely related to the zoom level z of the tile. At the z-th layer, there will be 2 z × 2 z = 4 z tiles. The width and height (in pixels) of each tile are represented by extent. Then the range of the pixel coordinate system at the z-th layer is (2 z × extent, 2 z × extent). The conversion from projected coordinates to pixel coordinates is the process of mapping each coordinate point of the spatial feature to a pixel in the pixel coordinate system.
[0070] (3) Vector tile generation process. Assume the coordinates of the upper left corner of the vector tile in the pixel coordinate system are (t x , t y ), and the coordinates of a coordinate point of the spatial feature in the pixel coordinate system are (p x , p y). In the vector tile, the pixel coordinate reference origin of the spatial element is the upper left corner point of the vector tile. Therefore, the coordinate point (p x , p y ) with (t x , t y ) as the origin has pixel coordinates of (p x - t x , p y - t y ), as shown in Figure 7 . After converting the pixel coordinates of the spatial elements in the vector tile into pixel coordinates with the upper left corner of the vector tile as the origin, these data are encoded to generate a binary file in pbf format, and the encoding rules refer to the definition of MapBox.
[0071] One of the main reasons why the dynamic slicing strategy cannot support a large amount of data is that complex and time-consuming operations of two coordinate conversions as shown in Figure 6 are performed when requesting tiles. For the same spatial element, in tile requests at different levels (different z values), the above two coordinate conversions need to be executed, which is a repetitive calculation.
[0072] The slice-free scheme proposed in the present disclosure only pre-executes the above two coordinate conversions for the maximum level before writing the spatial elements into the database, generates the vector tiles of the maximum level, stores the spatial elements in the database in the form of pixel coordinates in the pixel coordinate system of the maximum level, while the traditional static slicing strategy needs to pre-generate and store the vector tiles of all levels. When the client requests vector tiles later, the corresponding spatial elements are queried from the database, and the vector tiles can be directly generated and returned through simple operations of coordinate contraction and coordinate translation. Compared with the traditional dynamic slicing strategy, the coordinate conversion operation during the request is omitted, the calculation amount is reduced, and the response speed and the supported concurrency are improved. The visualization method of the slice-free strategy is specifically introduced below.
[0073] Figure 8 shows a flowchart of the visualization method of the slice-free strategy according to some embodiments of the present disclosure. As shown in Figure 8 , the visualization method of this embodiment includes steps 810 - 850, and may also include step 800 as needed. This visualization method is executed by a visualization device, for example, the visualization device may be a server in the visualization scenario, which provides visualization services for each client in the visualization scenario.
[0074] In step 800, a set of spatial elements represented by pixel coordinates in the pixel coordinate system of the maximum level of the vector tile is obtained and stored in advance. Among them, the obtained information can be stored in a database or a distributed database.
[0075] This step can be executed when the set of spatial elements represented by pixel coordinates is obtained for the first time and when the spatial elements change and need to update the set of spatial elements represented by pixel coordinates. In other cases, it may not be executed. This reduces the computational amount for processing vector tile requests and improves the response speed.
[0076] In some embodiments, the implementation method of this step includes: converting the geographic coordinates of the set of spatial elements represented by geographic coordinates into projected coordinates, and then converting the projected coordinates into pixel coordinates in the pixel coordinate system of the maximum level of the vector tile, so as to obtain and store in advance the set of spatial elements represented by pixel coordinates in the pixel coordinate system of the maximum level of the vector tile. Specific coordinate conversion techniques can refer to the prior art, for example, refer to Figure 6 the coordinate conversion process shown in
[0077] The maximum level of the vector tile can be determined and set according to the requirements of the visualization display accuracy. When converting projected coordinates (represented by floating-point numbers) into pixel coordinates (represented by integers), there will be a loss of precision. To store the spatial elements represented by pixel coordinates in the database, it is necessary to ensure that the pixel coordinates have sufficient precision to meet the visualization requirements of the client for spatial data at different granularities. For example, the maximum level of the vector tile is an integer between 20 and 25. When extent = 512 pixels and z = 22, the distance in the real world corresponding to one pixel in the tile is 3.7 cm, which is called the map resolution in the industry, that is, the map resolution reaches 3.7 cm per pixel. This resolution is sufficient in most map visualization scenarios. At this time, the width and height of the pixel coordinate system are both 2 22 ×512 = 2 22 ×2 9 = 2 31 × pixels. In this scenario, the maximum level z m can be set to 22. Project the spatial elements onto the pixel coordinate system with z m = 22 and extent = 512 to obtain the spatial elements represented by pixel coordinates with a map resolution of 3.7 cm per pixel, and then store them in the database. If higher display accuracy is required, the maximum level can be set larger, such as 23 or 24 or 25, etc.; if higher display accuracy is not required, the maximum level can be set slightly smaller, such as 21 or 20, etc., but not limited to the examples given.
[0078] In step 810, receive the coordinate information of the first vector tile requested by the client, including the first level where the first vector tile is located, the row number and column number of the first vector tile in the first level.
[0079] For example, the coordinate information of the first vector tile requested by the client is <x, y, z>, where z represents the first level where the first vector tile is located, and z ≤ zm , z m represents the maximum level of the set vector tiles, and x and y respectively represent the column number and row number of the first vector tile in the first level.
[0080] The first vector tile is, for example, the first vector tile of the spatial data. The first vector tile is, for example, the first vector tile of the map.
[0081] In step 820, according to the coordinate information of the first vector tile, determine the first pixel range of the first vector tile in the pixel coordinate system of the maximum level of the vector tiles.
[0082] Using the vector pyramid model, according to the coordinate information of the first vector tile, the first pixel range of the first vector tile in the pixel coordinate system of the maximum level of the vector tiles can be determined. In some embodiments, step 820 may include: in the order from the first level to the maximum level, for each adjacent upper level and lower level between the first level and the maximum level, if the number of the vector tile in the pixel coordinate system of the upper level corresponding to the first vector tile is z′, determine that the number (i.e., the pixel range) of the vector tile in the pixel coordinate system of the lower level corresponding to the first vector tile is z′×4, z′×4 + 1, z′×4 + 2, z′×4 + 3, until the first pixel range of the first vector tile in the pixel coordinate system of the maximum level of the vector tiles is determined. The determination process of adjacent levels can refer to Figure 5 as shown.
[0083] In step 830, using the first pixel range, query the set of spatial elements represented by pixel coordinates in the pixel coordinate system of the maximum level of the stored vector tiles to obtain the first spatial element within the first pixel range.
[0084] In step 840, perform coordinate contraction and / or coordinate translation on the first spatial element to obtain the first spatial data of the first spatial element in the tile coordinate system.
[0085] In some embodiments, coordinate contraction includes: determining the displacement amount according to the maximum level and the first level, where the displacement amount is the difference between the maximum level and the first level, and then displacing each coordinate point in the first spatial element by the displacement amount in the first pixel coordinate in the pixel coordinate system of the maximum level of the vector tiles to obtain the second pixel coordinate after contraction. In the case of coordinate contraction, shift the number of binary digits of each coordinate point in the first pixel coordinate in the pixel coordinate system of the maximum level of the vector tiles to the right by the displacement amount to obtain the second pixel coordinate after contraction.
[0086] For example, because the coordinate system of the stored spatial elements is a 22 - level pixel coordinate system, that is, the maximum level z m= 22, and the requested vector tile is at zoom level z where z ≤ 22. Therefore, coordinate contraction is required to transform the spatial feature into the pixel coordinate system at zoom level z. Assume the coordinates of each point in the first spatial feature in the pixel coordinate system at zoomLevel = 22 are set as (p x , p y ). The contracted coordinates are (contract_p x , contract_p y ). Then we have:
[0087] contract_p x = p x ÷ 2 22-z , p x ÷ 2 22-z = p x >> (22 - z)
[0088] contract_p y = p y ÷ 2 22-z =, p y ÷ 2 22-z = p y >> (22 - z)
[0089] where >> represents a right shift.
[0090] In some embodiments, the coordinate translation includes: through coordinate translation, the second pixel coordinates with the origin of the pixel coordinate system as the origin are transformed into the third pixel coordinates with the corner point of the vector tile as the origin in the tile coordinate system to obtain the first spatial data. That is, the abscissa of the second pixel coordinates with the origin of the pixel coordinate system as the origin minus the product of the row number of the first vector tile in the first level and the size of the vector tile to obtain the abscissa of the third pixel coordinates; the ordinate of the second pixel coordinates with the origin of the pixel coordinate system as the origin minus the product of the column number of the first vector tile in the first level and the size of the vector tile to obtain the column coordinate of the third pixel coordinates.
[0091] Since the spatial feature in the vector tile should have the upper left corner of the vector tile as the coordinate origin, coordinate translation is required to convert the original pixel coordinates with the origin of the pixel coordinate system as the origin into pixel coordinates with the upper left corner of the tile as the origin. Assume the pixel coordinates with the upper left corner of the vector tile as the origin are (move_p x , move_p). Then we have:
[0092] move_p x = contract_p x - x × extent
[0093] move_py = contract_p x -y × extent
[0094] For the request of tile <x, y, z>, 22 - z, x × extent, and y × extent are all fixed. Then, coordinate contraction is an integer displacement operation, and coordinate translation is an integer subtraction operation. Both of these operations are very simple. Compared with coordinate transformation (including trigonometric function operations, multiplication, and division operations), the computational complexity of displacement operations and subtraction operations is not large. Therefore, this tile generation method can provide a faster request response speed. If stored in a distributed database, it can also provide a very high concurrent access volume.
[0095] In step 850, a first vector tile is formed based on the first spatial data and returned to the client for display.
[0096] Among them, the first spatial data is encoded to form the first vector tile, and the encoding rule can refer to the definition of MapBox.
[0097] In the embodiment of the present disclosure, by pre-obtaining and storing the set of spatial features represented by pixel coordinates in the pixel coordinate system of the maximum level of the vector tile, subsequent queries of this stored information can be used to determine the spatial features within the pixel range corresponding to the requested vector tile. Then, through simple operations such as coordinate contraction and coordinate translation on the spatial features, the requested vector tile can be generated for display. It neither requires the complex and time-consuming operations of two coordinate transformations for dynamic vector slicing nor requires the pre-slicing and storage of all levels of vector tiles for static vector slicing. Thus, a slicing-free solution applicable to spatial data is achieved, improving the response speed and the supported concurrency, and can better meet the requirements of simultaneously supporting data updates and visual display of large data volumes.
[0098] The above Figure 8 The embodiment describes a visualization method for the slicing-free strategy for spatial data. For the visualization problem of spatio-temporal data, based on the above slicing-free strategy, the present disclosure proposes a spatio-temporal pyramid model for displaying the movement trajectory of a moving object over a period of time.
[0099] Classified according to the standard of whether the spatial position changes dynamically over time, spatio-temporal data can be divided into two categories: spatially static + temporally dynamic (such as meteorological station sensor data), and spatio-temporally dynamic (such as vehicle positioning data). Visualization of spatio-temporal data generally pursues data timeliness, such as visualizing the temperature data of the most recent 10 days, visualizing the spatial distribution of vehicles in a certain area in the most recent hour, etc.
[0100] For the first type of spatio-temporal data, since the spatial location remains unchanged, static vector tiles can be generated according to the spatial location first as the base map. Then, the reading information (such as temperature data) in the most recent period of time can be overlaid on the base map to achieve a visualization effect.
[0101] For the second type of spatio-temporal data, its spatial location changes over time. If the dynamic vector tile slicing strategy is used, in the vector pyramid, the smaller the level, the larger the spatial range corresponding to the tiles in that level, which results in the generated tiles (pbf files) being very large. Generally, when the level becomes smaller, spatial features are sampled, and only some spatial features are retained in the tiles. If the client wants to view all the spatial features, it needs to view tiles at a larger level, because the larger the level, the smaller the spatial range corresponding to each tile, and the number of spatial features inside is limited, so sampling is not required.
[0102] The data volume of spatio-temporal data continues to increase over time. If all the features in the most recent, for example, 1 hour are displayed in tiles at a small level (such as z = 0), the tiles will be very large, which is unrealistic. However, if all the features in the most recent, for example, 1 hour are displayed in tiles at a large level (such as z = 20), since the spatial range corresponding to the tiles is small, the number of features in them will not be too many.
[0103] The present disclosure designs a spatio-temporal pyramid model, as Figure 9 shown. The spatio-temporal pyramid model includes a vector pyramid model and the corresponding time ranges added to each level in the vector pyramid model. The smaller the level, the smaller the corresponding time range of the level. For example, the corresponding time range of level 0 is less than 5 minutes, the corresponding time range of level 1 is less than 20 minutes, and the corresponding time range of level 2 is less than 60 minutes. Among them, the time range refers to the time difference between the spatio-temporal feature and the query time, also known as the time window, denoted by time. The smaller the level, the smaller the time window, and only the data in the most recent short period of time is visualized. When the level becomes larger, the time window of the tile can be enlarged to see the data in a longer period of the past. This vector tile slicing scheme with a dynamic time window can, based on the tile-free strategy proposed above, convert the spatial attributes of spatio-temporal dynamic data into pixel coordinates and store them in the database. When the client requests a tile, the spatial range is generated according to the coordinates of the tile, and the time range is generated according to the tile level z. A spatio-temporal range query is performed on the spatio-temporal data in the database, and the obtained data is subjected to coordinate adaptation to generate vector tiles and return them to the client. The following is described in combination with Figure 10 embodiments.
[0104] Figure 10 shows a schematic flowchart of a visualization method of the tile-free strategy according to some embodiments of the present disclosure. As Figure 10As shown, the visualization method of this embodiment includes steps 1010 - 1050, and may further include step 1000 as needed. This visualization method is executed by a visualization device, for example. The visualization device may be a server in the visualization scenario, which provides visualization services for spatio-temporal data to each client in the visualization scenario.
[0105] In step 1000, a set of spatial elements represented by pixel coordinates in the pixel coordinate system of the maximum level of the vector tiles is obtained and stored in advance. Among them, the obtained information can be stored in a database or a distributed database.
[0106] In step 1010, the coordinate information of the first vector tile requested by the client is received, including the first level where the first vector tile is located, the row number and column number of the first vector tile in the first level.
[0107] The first vector tile is, for example, the first vector tile of spatio-temporal data. The first vector tile is, for example, the first vector tile of moving object trajectory data.
[0108] In step 1020a, according to the coordinate information of the first vector tile, the first pixel range corresponding to the first vector tile in the pixel coordinate system of the maximum level of the vector tiles is determined.
[0109] Using the spatio-temporal pyramid model, especially using the part of the vector pyramid model in the spatio-temporal pyramid model, according to the coordinate information of the first vector tile, the first pixel range corresponding to the first vector tile in the pixel coordinate system of the maximum level of the vector tiles can be determined. Specifically, step 820 can be referred to.
[0110] In step 1020b, the first time range corresponding to the first level where the first vector tile is located is determined.
[0111] Using the spatio-temporal pyramid model, especially using the time ranges corresponding to each level in the spatio-temporal pyramid model, the first time range corresponding to the first level where the first vector tile is located is determined.
[0112] In step 1030, the set of spatial elements represented by pixel coordinates in the pixel coordinate system of the maximum level of the stored vector tiles is queried to obtain the first spatial elements within the first time range and the first pixel range. The first spatial elements at this time are elements within a certain time range and a certain spatial range, and can be regarded as spatio-temporal elements.
[0113] In step 1040, coordinate contraction and / or coordinate translation is performed on the first spatial elements to obtain the first spatial data of the first spatial elements in the tile coordinate system.
[0114] In step 1050, a first vector tile is formed based on the first spatial data and returned to the client for display.
[0115] For the specific implementation of the above steps 1000, 1010, 1020a, 1040, and 1050, reference may be made to the foregoing steps 800, 810, 820, 840, and 850, and the same or similar content will not be described repeatedly.
[0116] In the embodiments of the present disclosure, by pre-obtaining and storing a set of spatial elements represented by pixel coordinates in the pixel coordinate system of the maximum level of the vector tile, and subsequently querying this stored information, the spatial elements within the corresponding pixel range and time range of the requested vector tile can be determined. Then, through simple operations such as coordinate contraction and coordinate translation on the spatial elements, the requested vector tile can be generated for display. This neither requires the complex and time-consuming operations of two coordinate conversions for dynamic vector slicing, nor requires the pre-slicing and storage of vector tiles at all levels for static vector slicing. Thus, a slicing-free scheme applicable to spatio-temporal data is achieved, improving the response speed and the supported concurrency, and can better meet the requirements for simultaneously supporting data updates and visual display of large data volumes.
[0117] Figure 11 The structural schematic diagram of a visualization device showing some embodiments of the present disclosure.
[0118] As Figure 11 shown, the visualization device 1100 of this embodiment includes: a memory 1110 and a processor 1120 coupled to the memory 1110. The processor 1120 is configured to execute the visualization method in any of the embodiments based on instructions stored in the memory 1110.
[0119] Among them, the memory 1110 may include, for example, a system memory, a fixed non-volatile storage medium, etc. The system memory stores, for example, an operating system, application programs, a boot loader, and other programs.
[0120] Among them, the processor 1120 may be implemented in the form of a general-purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), or other programmable logic devices, discrete hardware components such as discrete gates or transistors.
[0121] The visualization device 1100 may further include an input / output interface 1130, a network interface 1140, a storage interface 1150, etc. These interfaces 1130, 1140, 1150 and the memory 1110 and the processor 1120 may be connected through, for example, a bus 1160. Among them, the input / output interface 1130 provides connection interfaces for input / output devices such as a display, a mouse, a keyboard, and a touch screen. The network interface 1140 provides connection interfaces for various networking devices. The storage interface 1150 provides connection interfaces for external storage devices such as an SD card and a USB flash drive. The bus 1160 may use any bus structure in a variety of bus structures. For example, the bus structure includes, but is not limited to, an Industry Standard Architecture (ISA) bus, a MicroChannel Architecture (MCA) bus, and a Peripheral Component Interconnect (PCI) bus.
[0122] Figure 12 Schematic diagram of the structure of a visualization device showing some embodiments of the present disclosure.
[0123] As Figure 12 shown, the visualization device 1200 of this embodiment includes: a module for executing a visualization method.
[0124] A receiving module 1210, configured to receive coordinate information of a first vector tile requested by a client, including a first level where the first vector tile is located, a row number and a column number of the first vector tile in the first level;
[0125] A first determination module 1220-1, configured to determine a first pixel range of the first vector tile corresponding to the pixel coordinate system at the maximum level of the vector tiles according to the coordinate information of the first vector tile;
[0126] A query module 1230, configured to query a set of spatial elements represented by pixel coordinates in the pixel coordinate system at the maximum level of the stored vector tiles to obtain a first spatial element within the first pixel range;
[0127] A processing module 1240, configured to perform coordinate contraction and / or coordinate translation on the first spatial element to obtain first spatial data of the first spatial element in the tile coordinate system;
[0128] A forming module 1250, configured to form a first vector tile based on the first spatial data and return it to the client for display.
[0129] In some embodiments, the processing module 1240 is configured to determine a displacement amount according to the maximum level and the first level, and displace the first pixel coordinates of each coordinate point in the first spatial element in the pixel coordinate system of the maximum level of the vector tile according to the displacement amount to obtain the shrunk second pixel coordinates; and / or, through coordinate translation, transform the second pixel coordinates with the origin of the pixel coordinate system as the origin to the third pixel coordinates with the corner point of the vector tile as the origin in the tile coordinate system, so as to obtain the first spatial data.
[0130] In some embodiments, the processing module 1240 is configured to shift the number of binary digits of the first pixel coordinates of each coordinate point in the first spatial element in the pixel coordinate system of the maximum level of the vector tile to the right according to the shift amount to obtain the shrunk second pixel coordinates.
[0131] In some embodiments, the displacement amount is the difference between the maximum level and the first level.
[0132] In some embodiments, the processing module 1240 is configured to subtract the product of the row number of the first vector tile in the first level and the size of the vector tile from the abscissa of the second pixel coordinates with the origin of the pixel coordinate system as the origin to obtain the abscissa of the third pixel coordinates; subtract the product of the column number of the first vector tile in the first level and the size of the vector tile from the ordinate of the second pixel coordinates with the origin of the pixel coordinate system as the origin to obtain the column coordinate of the third pixel coordinates.
[0133] In some embodiments, the maximum level of the vector tile is an integer between 20 and 25.
[0134] In some embodiments, the first determination module 1220-1 is configured to, in the order from the first level to the maximum level, for the upper level and the lower level in each adjacent level between the first level and the maximum level, if the number of the vector tile in the pixel coordinate system of the upper level corresponding to the first vector tile is z′, determine that the number of the vector tile in the pixel coordinate system of the lower level corresponding to the first vector tile is z′×4, z′×4 + 1, z′×4 + 2, z′×4 + 3, until the first pixel range in the pixel coordinate system of the maximum level of the vector tile corresponding to the first vector tile is determined.
[0135] The storage module 1260 is configured to convert the geographic coordinates of the spatial element set represented by geographic coordinates into projected coordinates, and then convert the projected coordinates into pixel coordinates in the pixel coordinate system of the maximum level of the vector tile, so as to pre-obtain and store the spatial element set represented by pixel coordinates in the pixel coordinate system of the maximum level of the vector tile.
[0136] The second determination module 1220-2 is configured to determine a first time range corresponding to the first level where the first vector tile is located.
[0137] The query module 1230 is configured to query a set of spatial features represented by pixel coordinates in the pixel coordinate system of the maximum level of the stored vector tiles to obtain a first spatial feature within the first time range and the first pixel range.
[0138] The spatio-temporal pyramid model includes a vector pyramid model and time ranges corresponding to each level added to the vector pyramid model. The smaller the level, the smaller the time range corresponding to the level.
[0139] The first determination module 1220-1 is configured to use the spatio-temporal pyramid model to determine a first pixel range corresponding to the first vector tile in the pixel coordinate system of the maximum level of the vector tiles.
[0140] The second determination module 1220-2 is configured to use the spatio-temporal pyramid model to determine a first time range corresponding to the first level where the first vector tile is located.
[0141] The first vector tile includes at least one of a first vector tile of spatial data and a first vector tile of spatio-temporal data.
[0142] The first vector tile includes a first vector tile of a map and a first vector tile of moving object trajectory data.
[0143] Figure 13 A schematic structural diagram of a visualization system showing some embodiments of the present disclosure.
[0144] As Figure 13 shown, the visualization system 1300 of this embodiment includes: a client 1310 and a visualization device 1320.
[0145] The client 1310 is configured to issue a request for a first vector tile, carry coordinate information of the requested first vector tile, including the first level where the first vector tile is located, the row number and column number of the first vector tile in the first level, and receive and display the returned first vector tile.
[0146] The visualization device 1320 is configured to execute a visualization method. The visualization device 1320 is, for example, the visualization devices 1100 and 1200.
[0147] The visualization device may, for example, be a server in a visualization scenario, which provides a visualization service of spatial data for each client in the visualization scenario.
[0148] Embodiments of the present disclosure provide a computer-readable storage medium storing a computer program, which when executed by a processor implements the steps of a visualization method. The storage medium is, for example, a non-transitory computer-readable storage medium.
[0149] It should be noted that in the technical solutions of the present disclosure, the collection, acquisition, update, analysis, processing, use, transmission, storage, etc. of personal information such as the user's location comply with the provisions of relevant laws and regulations, are used for legal purposes, and do not violate public order and good customs. Necessary measures are taken for user personal information to prevent illegal access to user personal information data, and to safeguard user personal information security, network security, and national security.
[0150] Those skilled in the art should understand that the embodiments of the present disclosure can be provided as a method, a system, or a computer program product. Therefore, the present disclosure can take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present disclosure can take the form of a computer program product implemented on one or more non-transitory computer-readable storage media (including but not limited to disk memories, CD-ROMs, optical memories, etc.) containing computer program code.
[0151] The present disclosure is described with reference to the flowcharts and / or block diagrams of methods, apparatuses (systems), and computer program products according to embodiments of the present disclosure. It should be understood that each flow and / or block in the flowchart and / or block diagram, and the combination of flows and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing devices to generate a machine, such that the instructions executed by the processor of the computer or other programmable data processing devices generate a device for implementing the functions specified in Figure 1 one or more of the flows Figure 1 or multiple flows and / or blocks
[0152] These computer program instructions can also be stored in a computer-readable memory capable of guiding the computer or other programmable data processing devices to work in a specific manner, such that the instructions stored in the computer-readable memory generate a manufactured article including an instruction device, and the instruction device implements the functions specified in Figure 1 one or more of the flows Figure 1 or multiple flows and / or blocks
[0153] These computer program instructions can also be loaded onto a computer or other programmable data processing apparatus, so that a series of operation steps are performed on the computer or other programmable apparatus to produce a computer-implemented process, thereby the instructions executed on the computer or other programmable apparatus provide steps for implementing the functions specified in one process or multiple processes and / or blocks Figure 1 one process or multiple processes and / or blocks Figure 1 or steps for implementing the functions specified in one block or multiple blocks.
[0154] The foregoing are only preferred embodiments of the present disclosure, and are not intended to limit the present disclosure. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present disclosure shall be included within the protection scope of the present disclosure.
Claims
1. A visualization method, characterized in that, Including: Receiving the coordinate information of the first vector tile of the client request, including the first level where the first vector tile is located, the row number and column number of the first vector tile in the first level; Determining a first pixel range of the first vector tile in the pixel coordinate system of the maximum level of the vector tiles corresponding to the first vector tile according to the coordinate information of the first vector tile; Querying the set of spatial elements represented by pixel coordinates in the pixel coordinate system of the maximum level of the stored vector tiles to obtain a first spatial element within the first pixel range; Performing coordinate contraction and / or coordinate translation on the first spatial element to obtain first spatial data of the first spatial element in the tile coordinate system; Forming a first vector tile based on the first spatial data and returning it to the client for display.
2. The method according to claim 1, characterized in that, Performing coordinate contraction and / or coordinate translation on the first spatial element includes: Determining a displacement amount according to the maximum level and the first level, and displacing the first pixel coordinates of each coordinate point in the first spatial element in the pixel coordinate system of the maximum level of the vector tiles according to the displacement amount to obtain contracted second pixel coordinates; and / or By coordinate translation, transforming the second pixel coordinates with the origin of the pixel coordinate system as the origin to the third pixel coordinates with the corner point of the vector tile as the origin in the tile coordinate system to obtain the first spatial data.
3. The method according to claim 2, characterized in that, Displacing the first pixel coordinates of each coordinate point in the first spatial element in the pixel coordinate system of the maximum level of the vector tiles according to the displacement amount includes: Shifting the number of binary digits of the first pixel coordinates of each coordinate point in the first spatial element in the pixel coordinate system of the maximum level of the vector tiles to the right according to the shift amount to obtain the contracted second pixel coordinates.
4. The method according to claim 2, characterized in that, The displacement amount is the difference between the maximum level and the first level.
5. The method according to claim 2, characterized in that, Transforming the second pixel coordinates with the origin of the pixel coordinate system as the origin to the third pixel coordinates with the corner point of the vector tile as the origin in the tile coordinate system includes: Subtracting the product of the row number of the first vector tile in the first level and the size of the vector tile from the abscissa of the second pixel coordinates with the origin of the pixel coordinate system as the origin to obtain the abscissa of the third pixel coordinates; Subtracting the product of the column number of the first vector tile in the first level and the size of the vector tile from the ordinate of the second pixel coordinates with the origin of the pixel coordinate system as the origin to obtain the column coordinate of the third pixel coordinates.
6. The method according to any one of claims 1-5, characterized in that, The maximum level of the vector tiles is an integer between 20 and 25.
7. The method according to any one of claims 1-5, characterized in that, Determining a first pixel range of the first vector tile in the pixel coordinate system of the maximum level of the vector tiles corresponding to the first vector tile according to the coordinate information of the first vector tile includes: In the order from the first level to the maximum level, for each adjacent upper level and lower level between the first level and the maximum level, if the number of the vector tile in the pixel coordinate system of the upper level corresponding to the first vector tile is z′, determining that the numbers of the vector tiles in the pixel coordinate system of the lower level corresponding to the first vector tile are z′×4, z′×4 + 1, z′×4 + 2, z′×4 + 3, until determining the first pixel range of the first vector tile in the pixel coordinate system of the maximum level of the vector tiles.
8. The method according to any one of claims 1-5, characterized in that, Also including: Convert the geographic coordinates of a set of spatial elements represented by geographic coordinates into projected coordinates, and then convert the projected coordinates into pixel coordinates in the pixel coordinate system of the maximum level of vector tiles, so as to obtain and store in advance a set of spatial elements represented by pixel coordinates in the pixel coordinate system of the maximum level of vector tiles.
9. The method according to any one of claims 1-5, characterized in that, It further includes: Determine a first time range corresponding to a first level where a first vector tile is located; The obtaining of the first spatial elements within the first pixel range includes: querying the set of spatial elements represented by pixel coordinates in the pixel coordinate system of the maximum level of the stored vector tiles to obtain the first spatial elements within the first time range and the first pixel range.
10. The method according to claim 9, characterized in that, The spatio-temporal pyramid model includes a vector pyramid model and time ranges corresponding to each level added in the vector pyramid model. The smaller the level, the smaller the time range corresponding to the level; Wherein: using the spatio-temporal pyramid model, determine a first pixel range in the pixel coordinate system of the maximum level of the vector tiles corresponding to the first vector tile, and determine a first time range corresponding to the first level where the first vector tile is located.
11. The method according to any one of claims 1-10, characterized in that, The first vector tile includes at least one of a first vector tile of spatial data and a first vector tile of spatio-temporal data.
12. The method according to claim 11, characterized in that, The first vector tile includes a first vector tile of a map and a first vector tile of mobile object trajectory data.
13. A visualization device, comprising: A memory; And a processor coupled to the memory, the processor being configured to execute the visualization method according to any one of claims 1-12 based on instructions stored in the memory.
14. A visualization device, comprising: A module for executing the visualization method according to any one of claims 1-12.
15. A visualization system, comprising: A client, configured to send a request for a first vector tile, carrying coordinate information of the requested first vector tile, including a first level where the first vector tile is located, a row number and a column number of the first vector tile in the first level, and receive the returned first vector tile and display it; A visualization device, configured to execute the visualization method according to any one of claims 1-12.
16. A computer-readable storage medium, having stored thereon a computer program, which when executed by a processor, implements the steps of the visualization method according to any one of claims 1-12.