CN115658779A - Population data display method and device - Google Patents

Population data display method and device Download PDF

Info

Publication number
CN115658779A
CN115658779A CN202211189974.XA CN202211189974A CN115658779A CN 115658779 A CN115658779 A CN 115658779A CN 202211189974 A CN202211189974 A CN 202211189974A CN 115658779 A CN115658779 A CN 115658779A
Authority
CN
China
Prior art keywords
population
map
data
target
display
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202211189974.XA
Other languages
Chinese (zh)
Other versions
CN115658779B (en
Inventor
高毓琳
何正国
黄盛�
张宇飞
黎栋梁
陈行
于晶涛
彭功超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Shuhui System Technology Co ltd
Guangzhou Planning And Natural Resources Automation Center
Original Assignee
Shanghai Shuhui System Technology Co ltd
Guangzhou Planning And Natural Resources Automation Center
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Shuhui System Technology Co ltd, Guangzhou Planning And Natural Resources Automation Center filed Critical Shanghai Shuhui System Technology Co ltd
Priority to CN202211189974.XA priority Critical patent/CN115658779B/en
Publication of CN115658779A publication Critical patent/CN115658779A/en
Application granted granted Critical
Publication of CN115658779B publication Critical patent/CN115658779B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Instructional Devices (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Processing Or Creating Images (AREA)

Abstract

The application provides a population data display method and a population data display device, wherein a user checks population data distribution conditions of a certain area by using a client, when the client outputs a population data display page, a population data display request containing a target map zooming level and a target display map range is sent to a service server, when the service server responds to the population data display request, a target population aggregation point located in the target display map range can be quickly and accurately inquired from data recorded in a target data cache table corresponding to the target map zooming level, the target population data corresponding to the target population aggregation point is fed back to the client for thermodynamic diagram rendering display, and compared with the target population data required by inquiring from massive population data, the query efficiency is improved.

Description

Population data display method and device
Technical Field
The application relates to the technical field of data processing, in particular to a population data display method and device.
Background
In applications such as city construction, city planning, city management, etc., the distribution of various populations in an area generally needs to be macroscopically checked, so that relevant departments are assisted to quickly make more reasonable decisions. Because the data volume of the urban population generally reaches the tens of millions, the population quantity, the population attributes and the like of each area can be counted generally in a numerical value or table mode, and corresponding legends such as bar graphs, trend graphs and pie charts are drawn for display.
However, the legend display mode of the population data respectively carries out statistical processing on a large amount of population data according to different population data distribution requirements, draws corresponding legends for display, has very large data statistics, reduces legend display efficiency, can obtain the distribution condition of the required population data by analyzing a plurality of legend display contents by a viewer, and influences the intuitiveness of assistant decision.
Disclosure of Invention
In order to solve the above problem, the embodiments of the present application provide the following technical solutions:
in one aspect, the present application provides a method for displaying demographic data, the method comprising:
responding to a population data display request sent by a client to obtain a target map zooming level and a target display map range of a population data display page currently output by the client;
inquiring a target data cache table corresponding to the target map zooming level from data cache tables corresponding to a plurality of map zooming levels; the data cache table records population aggregation points corresponding to map scaling levels and corresponding clustering information, wherein the clustering information comprises clustering coordinates of the corresponding population aggregation points and the total population number of each piece of clustering attribute information; the population aggregation points of the map zooming levels are obtained by carrying out hierarchical clustering processing on population data from at least one data source based on the screen searching range and the map zooming level where the population aggregation points are located;
matching the plurality of cluster coordinates recorded by the target data cache table based on the target display map range, and determining a target population aggregation point corresponding to each of the matched plurality of target cluster coordinates;
and feeding back target population data corresponding to the target population aggregation point to the client, and performing thermodynamic diagram rendering on the target population data by the client to display a population thermodynamic diagram in the population data display page, wherein the population thermodynamic diagram can represent population data distribution conditions under different attributes in the range of the target display map.
Optionally, the method for determining the data cache table corresponding to each of the plurality of map zoom levels includes:
acquiring a screen search range and a plurality of map zooming levels; the screen search range is determined based on pixel units of a client display screen; the multiple map zooming levels are determined based on a daily map standard, and the higher the map zooming level is, the smaller the corresponding display map range is;
carrying out hierarchical clustering processing on population data from at least one data source based on the screen search range from the maximum map zooming level in the map zooming levels to obtain a plurality of to-be-aggregated point sets corresponding to the map zooming levels respectively;
clustering population data from the previous map zooming level contained in each of the plurality of to-be-aggregated point sets to obtain population aggregation points corresponding to the current map zooming level and clustering information of the population aggregation points;
and writing the clustering information into a data cache table corresponding to the map zooming level for storage.
Optionally, the method further includes:
obtaining a plurality of pieces of demographic data from at least one data source; each piece of population data comprises geographic coordinates and at least one attribute information;
sorting the population data according to the geographic coordinates to obtain corresponding population sorting results;
and according to the population sorting result and the preset population grouping number, carrying out partition processing on the population data to obtain a plurality of population data sets, and updating and determining data cache tables corresponding to the map scaling levels by using the population data contained in the population data sets.
Optionally, the performing, starting from a maximum map zoom level in the multiple map zoom levels, hierarchical clustering processing on demographic data from at least one data source based on the screen search range to obtain multiple to-be-aggregated point sets corresponding to the multiple map zoom levels respectively includes:
determining population data to be searched corresponding to the plurality of map zooming levels respectively aiming at a plurality of pieces of population data contained in each population data set;
determining a map search range for each of the plurality of map zoom levels based on the screen search range;
and traversing the population data to be searched corresponding to the previous map zooming level by utilizing the corresponding map searching range from the maximum map zooming level layer by layer to obtain a plurality of point sets to be aggregated.
Optionally, the clustering population data from the previous map zoom level corresponding to the multiple sets of points to be aggregated to obtain the population aggregation point corresponding to the current map zoom level and the clustering information of the population aggregation point includes:
carrying out average operation on geographic coordinates of a plurality of pieces of population data from the previous map scaling level contained in each to-be-aggregated point set to obtain clustering coordinates of corresponding population aggregation points;
summing the population number of the same attribute information in a plurality of pieces of population data from the previous map scaling level contained in each to-be-aggregated point set to obtain the total population number of each clustering attribute information of the corresponding population aggregation point;
and forming the cluster information of the population aggregation point by using the cluster coordinates of the same population aggregation point on the obtained current map zoom level and the total population number of each cluster attribute information.
Optionally, the method further includes:
updating population cluster points for each of the plurality of map zoom levels in response to a population data update event;
obtaining cluster information corresponding to the updated population aggregation point, and writing the cluster information into an undetermined cache table of a map scaling hierarchy where the corresponding population aggregation point is located;
updating the current pending cache table into a data cache table corresponding to the map scaling hierarchy, and determining the original data cache table of the map scaling hierarchy as a new pending cache table;
clearing cluster information recorded by each new pending cache table of the plurality of map scaling levels;
the updating the current pending cache table to a data cache table corresponding to the map scaling hierarchy, and then determining the original data cache table of the map scaling hierarchy as a new pending cache table includes:
determining data cache tables corresponding to the plurality of map zooming levels as transition cache tables;
determining pending cache tables corresponding to the map scaling levels as new data cache tables;
and determining the transition cache table as a new pending cache table corresponding to the map scaling hierarchy.
In another aspect, the present application further provides a method for displaying demographic data, the method including:
outputting a population data display page, and displaying a map with a target map zooming level and a target display map range on the population data display page;
receiving a demographic data display request including the target map zoom level and the target display map range from a service server;
receiving target population data fed back by the service server in response to the population data display request; the target population data is population data corresponding to a target population aggregation point of the target map scaling hierarchy; the target population aggregation point performs matching processing on a plurality of cluster coordinates recorded by a target data cache table corresponding to the target map zooming level based on the target display map range; the target population data comprises respective clustering information of a plurality of target population aggregation points, and the clustering information comprises clustering coordinates and total population number of each piece of clustering attribute information;
performing thermodynamic diagram rendering on the target population data, and displaying a population thermodynamic diagram on a map of the population display page; the population thermodynamic diagram can represent population data distribution under different attributes within the target display map.
Optionally, the method further includes:
in response to a selection operation aiming at any attribute of the population thermodynamic diagram, updating the population thermodynamic diagram to display population distribution under the selected attribute according to the population of the target population aggregation point with the selected attribute of the target map zooming level;
and monitoring an updating event aiming at the target display map range and/or the target map zooming level, and updating the population thermodynamic diagram displayed on the population data display page according to the target population data fed back again by the service server.
In yet another aspect, the present application further provides a demographic data display apparatus, comprising:
the population data display request response module is used for responding to a population data display request sent by a client to obtain a target map zooming level and a target display map range of a population data display page currently output by the client;
the target data cache table query module is used for querying a target data cache table corresponding to a target map scaling level from data cache tables corresponding to a plurality of map scaling levels respectively; the data cache table records population aggregation points corresponding to map scaling levels and corresponding clustering information, wherein the clustering information comprises clustering coordinates of the corresponding population aggregation points and the total population number of each piece of clustering attribute information; the population aggregation points of the map zooming levels are obtained by carrying out hierarchical clustering processing on population data from at least one data source based on the screen searching range and the map zooming level where the population aggregation points are located;
the target population aggregation point determining module is used for matching the plurality of cluster coordinates recorded by the target data cache table based on the target display map range, and determining a target population aggregation point corresponding to each of the plurality of matched target cluster coordinates;
and the target population data feedback module is used for feeding the target population data corresponding to the target population aggregation point back to the client, and the client performs thermodynamic diagram rendering on the target population data so as to display a population thermodynamic diagram in the population data display page, wherein the population thermodynamic diagram can represent population data distribution conditions under different attributes in the target display map range.
In yet another aspect, the present application further provides a demographic data display apparatus, comprising:
the population data display page output module is used for outputting a population data display page, and a map with a target map zooming level and a target display map range is displayed on the population data display page;
a population data display request sending module, configured to send a population data display request including the target map scaling level and the target display map range to a service server;
the target population data receiving module is used for receiving the target population data fed back by the service server in response to the population data display request; the target population data is population data corresponding to a target population aggregation point of the target map scaling hierarchy; the target population aggregation point performs matching processing on a plurality of cluster coordinates recorded by a target data cache table corresponding to the target map zooming level based on the target display map range; the target population data comprises respective clustering information of a plurality of target population aggregation points, and the clustering information comprises clustering coordinates and total population number of each clustering attribute information;
a population thermodynamic diagram display module for performing thermodynamic diagram rendering on the target population data and displaying a population thermodynamic diagram on a map of the population display page; the population thermodynamic diagram can represent population data distribution under different attributes within the target display map.
In still another aspect, the present application further provides a computer-readable storage medium, on which a computer program is stored, the computer program being loaded and executed by a processor to implement the human mouth data display method executed by the corresponding side.
Therefore, when a user uses a client to check population data distribution conditions of a certain area, the client can obtain a target map scaling level and a target display map range of a population data display page when outputting the population data display page, and sends a population data display request containing the information to a service server, so that when responding to the population data display request, the service server can directly query a target data cache table corresponding to the target map scaling level, and then quickly and accurately query a target population aggregation point corresponding to a target cluster coordinate located in the target display map range from data recorded in the data cache table, and feeds the corresponding target population data back to the client for thermodynamic diagram rendering display.
Drawings
In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings needed to be used in the description of the embodiments or the prior art will be briefly introduced below, it is obvious that the drawings in the following description are only embodiments of the present application, and for those skilled in the art, other drawings can be obtained according to the provided drawings without creative efforts.
FIG. 1 is a schematic flow chart diagram illustrating an alternative example of a gesture interaction based service transaction method according to the present application;
FIG. 2 is a schematic flow chart diagram illustrating yet another alternative example of a demographic data display method set forth herein;
fig. 3 is a data cache representation intention of each map scaling level in the population data display method provided in the present application;
FIG. 4 is a schematic flow chart diagram illustrating yet another alternative example of a demographic data display method set forth herein;
fig. 5 is a schematic flow chart illustrating a blocking process performed on mass population data in the population data display method according to the present application;
fig. 6 is a schematic view of a pyramid structure of population data of a plurality of map zoom levels in the population data display method provided in the present application;
FIG. 7 is a schematic flow chart diagram illustrating yet another alternative example of a demographic data display method set forth herein;
FIG. 8 is a schematic flow chart diagram illustrating yet another alternative example of a demographic data display method as set forth herein;
FIG. 9 is a schematic diagram of an alternative example of a population thermodynamic diagram in the population data display method of the present application;
FIG. 10 is a schematic diagram of an alternative example of a demographic data display apparatus as set forth in the present application;
FIG. 11 is a schematic diagram of a further alternative example of a demographic data display apparatus as set forth herein;
FIG. 12 is a schematic diagram of a further alternative example of a demographic data display apparatus as set forth herein;
FIG. 13 is a schematic diagram of a further alternative example of a demographic data display apparatus as set forth herein;
FIG. 14 is a schematic hardware configuration diagram of an alternative example of a computer device suitable for the demographic data display method proposed in the present application;
fig. 15 is a hardware configuration diagram of still another alternative example of a computer device suitable for the demographic data display method proposed in the present application.
Detailed Description
Aiming at the description content of the background technology part, the application hopes that the population data volume of each area can be correspondingly displayed on a map so as to visually display population distribution and difference; when the user needs to use the graph, the operator can touch any area on the display map to display the demographic data details of the area, interaction is increased, and accordingly the graph statistical mode of the population density thermodynamic diagram is provided, and the population distribution situation of each area is visually displayed. However, since the screen area of the electronic device cannot bear the rendering pressure, the density of visually recognizable dots is limited, and it is expected that the display dots can be subjected to data degradation, so that a large amount of data can be efficiently displayed.
Based on this, the present application proposes that data can be read from a data source (such as a map service, a geographic database, and the like) in a partitioned manner, adjacent display points (which may represent population data) in a certain range are aggregated, and after an aggregation point is generated, an aggregation point of a current level is generated according to a display level and an aggregation point of a previous level in sequence, and is cached in a data table. When the display is carried out on the display screen of the front-end electronic equipment, the corresponding display points can be directly inquired from the data table according to the current display range and the current display level, and the rendering display is carried out in a thermodynamic diagram mode.
The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it should be understood that the described embodiments are only a part of the embodiments of the present application, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
Referring to fig. 1, a schematic flow chart of an alternative example of the demographic data display method proposed in the present application may be executed by a computer device, which may be a service server supporting services such as demographics and display, so that a user may use a matching client to view a demographic data distribution in a thermodynamic manner. Based on this, as shown in fig. 1, the population data display method proposed in this embodiment may include, but is not limited to, the following steps:
step S11, responding to a population data display request sent by a client, and obtaining a target map zooming level and a target display map range of a population data display page currently output by the client;
when a user (such as a city planning manager, a manager and the like) wants to visually check population data distribution conditions in a certain area (such as a city, province or the whole country) through a map, a client supporting a population data query function can be started, a population data display page is output to present the map, population data is waited to be displayed, then an entry identifier such as a population data viewing function button/icon in the population data display page can be triggered, a population data display request is sent to a background service server, or the population data display request is generated when the population data display page is output, so as to request to obtain the population data display request for displaying the population data distribution conditions in a thermodynamic diagram mode on the population data display page, and the like.
It can be understood that, because the display area of the display screen of the client is limited, on the basis of ensuring the visually identifiable population data points, the density of the population data points that can be displayed by the display screen is limited, so that the population data points that can be displayed by the client are related to the information such as the number of pixels in the display area of the display screen, the map scaling level of the output map, and the like.
Therefore, when the client generates the demographic data display request, the target map zoom level where the map displayed or to be displayed on the demographic data display page is located and the displayed map range (marked as the target display map range, which changes with the change of the map zoom level under the condition that the display area is unchanged) may be obtained first, that is, each map area where the demographic data distribution needs to be displayed on the demographic data display page. Thereafter, a demographic data presentation request may be generated containing information such as the obtained target map zoom level and target display map range. It should be noted that the demographic data display request includes, but is not limited to, the information content, and may further include information such as a client identifier, if necessary.
After receiving a population data display request sent by any matched client, the service server can analyze the population data display request, and determine a target map scaling level and a target display map range of a population data display page currently output by the client, so as to determine the population data distribution situation of which areas the client wants to display according to what population data point density degree.
In the embodiment of the present application, the map zoom level is determined based on a sky map standard, the sky map is a slicing service provided by the mapping geographic information management part, the determined plurality of map zoom levels i may be divided into 1 to 20 levels, and the proportional size (distance on the map: actual distance) between the map displayed on the corresponding display screen and the actual geographic map may be, but is not limited to, 1. It can be seen that, with the display area of the display screen unchanged, as the zoom level of the map increases, the range of the map area that can be displayed decreases, but the displayed area is more detailed. Optionally, for the multiple map zoom levels in the embodiment of the present application, the scale size of the ith map zoom level may be one time of the scale size of the (i-1) th map zoom level, so that, under the condition that the display area of the display screen is not changed, the display map range of the (i-1) th map zoom level is one time of the display map range of the ith map zoom level.
Based on this, in the embodiment of the present application, a map presented on the demographic data display page output by the client may determine, according to a scale size actually required to be displayed, what map zoom level the map is displayed at, and accordingly the map with the determined map zoom level is displayed in the demographic data display page. It should be noted that, each time the user adjusts the display scale size or the map zoom level of the displayed map, the method described in the embodiment of the present application may be executed to enable the client to obtain the required display population data again and update the output population thermodynamic diagram in time.
Step S12, inquiring a target data cache table corresponding to a target map zooming level from data cache tables corresponding to a plurality of map zooming levels respectively;
in the embodiment of the present application, as can be seen from the above description of the map zoom level, the areas displayed in the visually recognizable range are different when the demographic data display page is at different map zoom levels, and the number of the demographic data points located in each area is different. Therefore, in order to improve response efficiency of displaying population data and achieve high-efficiency display of large data volume, for population data from at least one data source, hierarchical clustering (namely, hierarchical clustering algorithm based on machine learning) processing can be performed on the basis of a preset search range for a client display screen, population aggregation points (namely, display points of the population data) on each (for example, ith) map scaling level are determined, and then, clustering information of corresponding population aggregation points on the current map scaling level is obtained through averaging or summation operation according to the population data contained in each population aggregation point, namely, geographic coordinates and attribute information of the population data points from the previous (for example, ith-1) map scaling level.
Then, the cluster information of the population aggregation points on each map zooming level and the like can be written into the data cache table corresponding to the map zooming level for storage, so that population data recorded by the corresponding data cache table can be directly read when the population data distribution condition of the corresponding map zooming level is displayed subsequently. The method for creating the data cache table, the data content recorded by the method, and the process for acquiring the data content are not limited in the present application, and may be updated in real time or periodically along with the change of the population data, and the update implementation process may refer to the description of the corresponding part of the following embodiment, which is not described in detail herein.
Based on the analysis, after the service server obtains the target map scaling level of the client output population data display page according to the method, the service server can query the data cache table corresponding to the target map scaling level from the data cache tables of the plurality of map scaling levels configured in advance, and the data cache table is marked as a target data cache table. The representation of the one-to-one correspondence between the map zoom levels and the data cache tables and the construction method thereof, including but not limited to the implementation method of the context description, may be determined as appropriate.
The population aggregation point can be obtained by carrying out hierarchical clustering processing on population data from at least one data source based on the screen search range and the zoom level of the map where the population aggregation point is located. Optionally, the preset screen search range may be determined based on a pixel unit of the display screen of the client, for example, a screen search radius is formed by n display screen pixels, then, according to a map scale size between the display map and the actual geographic map, a map search radius of a corresponding map search level is calculated, geographic coordinates (such as longitude and latitude coordinates) of population data points on a previous map zoom level are traversed, a to-be-aggregated point set for a current map zoom level is determined, and a population aggregation point of the current map zoom level, that is, a population display point on the current map zoom level, is formed. It should be understood that, since the scale size and the displayed map range between different map search levels have a certain multiple relationship, after determining the actual search radius (or other search range representation) of a certain map zoom level, the actual search radius of other map zoom levels can be quickly calculated according to the multiple relationship.
In addition, in order to conveniently calculate the clustering coordinates of the population aggregation points, for the longitude and latitude coordinates of the population data points which are determined based on the geodetic coordinate system/the longitude and latitude coordinate system and contained in each population data, an open source technology GeoTools can be adopted, but is not limited to the adoption, firstly, the longitude and latitude coordinates are converted into mercator coordinates, and then, the distance between different population data points can be calculated according to the converted longitude and latitude coordinates, so as to determine whether two population data points (which are the unaggregated population data points) are the population data points to be aggregated. Therefore, the geographic coordinates of the population data may be longitude and latitude coordinates or mercator coordinates after conversion thereof, and the cluster coordinates of the population aggregation point may be mercator coordinates, which is not described in detail in the embodiment of the acquisition process.
Step S13, based on the target display map range, matching the plurality of cluster coordinates recorded by the target data cache table, and determining a target population aggregation point corresponding to each of the plurality of matched target cluster coordinates;
and S14, feeding back the target population data corresponding to the target population aggregation point to the client, and performing thermodynamic diagram rendering on the target population data by the client to display a population thermodynamic diagram in a population data display page, wherein the population thermodynamic diagram can represent population data distribution conditions under different attributes in a target display map range.
According to the description content of the data cache table, the data cache table has a coordinate field and attribute fields with various attributes, the coordinate field can be used for recording field contents of various population aggregation points on a corresponding map scaling hierarchy, such as corresponding cluster coordinates, and the attribute fields can be used for recording cluster attribute information of the corresponding population aggregation points, so that after the service server determines the target data cache table corresponding to the target map scaling hierarchy which needs to be displayed by the client, the service server can compare various cluster coordinates corresponding to the coordinate field of the target data cache table with a target display map range, determine target cluster coordinates located in the target display map range, and determine the population aggregation points with the target cluster coordinates as the target population aggregation points to be displayed.
And then, directly feeding the obtained target population data such as the cluster coordinates and the cluster attribute information corresponding to the target population aggregation point back to the client side for thermodynamic diagram rendering, or feeding the target population data back to the client side after thermodynamic diagram rendering processing, outputting the obtained population thermodynamic diagram, and displaying the population data distribution condition under at least one attribute in a target display map range by the thermodynamic diagram, wherein the number of floating population can be represented by the color depth if the distribution condition of the number of floating population in the target display map range is displayed, but the method is not limited to the method and the display mode of the population thermodynamic diagram can be flexibly adjusted.
In summary, in the embodiment of the present application, in order to reduce rendering pressure, hierarchical aggregation processing may be performed on population data from at least one data source based on a screen search range and a hierarchical clustering algorithm for a display screen of a client, to determine population aggregation points, i.e., population display points, corresponding cluster coordinates thereof, cluster attribute information, and other cluster information, which correspond to different map scaling levels, and write the cluster information into a data cache table constructed for the map scaling level for storage, so that when a user views population data distribution conditions in a certain area using the client, the client may obtain a target map scaling level and a target display map range of the population data display page when outputting a population data display page, and send a population data display request including the information to a service server.
Referring to fig. 2, which is a schematic flow chart of an optional example of the population data display method provided in the present application, in this embodiment, a cache process of population data may be described, and specifically, an acquisition process of a data cache table corresponding to each of a plurality of map scaling hierarchies may be described in detail, but the present embodiment is not limited to the detailed implementation method described in this embodiment, and regarding a use process of the data cache table, reference may be made to descriptions of corresponding parts of the context embodiment, and details of this embodiment are not described in detail. As shown in fig. 2, the obtaining method of the data cache table corresponding to each of the plurality of map scaling levels may include, but is not limited to:
step S21, acquiring a screen search range and a plurality of map zooming levels;
as can be known from the above description of the technical solution of the present application, the screen search range may be determined based on a pixel unit of the client display screen, and may be a screen search radius, i.e., how many pixels (e.g., 40 pixels, etc., which may be flexibly adjusted according to an actual display effect, and the numerical value of the screen search radius is not limited in the present application), are displayed/corresponding population data points are gathered together to form a population data aggregation point.
The plurality of map zoom levels may be determined based on a day map standard, and in practical applications, which map zoom level is to be adopted may be determined according to a display scale size (i.e., a scale size of a display map) of a demographic data display page output by the electronic device, and the correspondence between different map zoom levels and display scale sizes of maps may be determined according to the day map standard, which is not described in detail herein. In the embodiment of the application, the higher the map zooming level is, the larger the corresponding map scale size is, and the smaller the corresponding map display range is.
Step S22, starting from the maximum map zooming level in a plurality of map zooming levels, carrying out hierarchical clustering processing on population data from at least one data source based on a screen searching range to obtain a plurality of to-be-aggregated point sets corresponding to the plurality of map zooming levels respectively;
in practical applications, the data format of the population data may be based on arcgis, supermap or a map service conforming to the ogc standard, or may be a Geographic database such as shp, gdb, mdb, and sde, that is, the data source of the population data may include GIS (Geographic Information System) platforms capable of providing map services, such as arcgis, supermap, and the like, or may include Geographic databases, and the like.
The map service may include at least one sub-service, such as querying according to a query condition input by a user, deriving attribute information and coordinate information of a queried graph, and each sub-service included in the map service may be flexibly configured or adjusted according to an actual situation, which is not described in detail herein.
Based on the analysis, the computer device can acquire the population data through the query interface of the map service in the process of reading the population data, and can also connect with the geographic database through the ArcEngine to query the population data stored in the geographic database. In the embodiment of the present application, the directly read demographic data may be point data, and may generally include population, geographic coordinates, attribute information of at least one attribute, and the like, and the geographic coordinates may be based on a geodetic/latitudinal coordinate system.
In summary, in the embodiment of the present application, a map scale size corresponding to a maximum map zoom level (e.g., a map zoom level at a 20 th level) is determined, a map search range (i.e., an actual search range) at the maximum map zoom level is calculated by using the map scale size and a preset screen search range (e.g., a screen search radius of 40 pixels), and then, from a plurality of pieces of population data located at a previous map zoom level (e.g., a map zoom level at a 19 th level), population data points located within the map search range are determined as a set of to-be-aggregated points, so as to form corresponding population aggregation points, i.e., obtain a plurality of population aggregation points at the maximum map zoom level.
Then, when determining the population aggregation point of the secondary map zoom level (e.g., the map zoom level at level 19), the map search range of the secondary map zoom level may be determined according to the method described above, which is twice the map search range of the previous map zoom level as analyzed above, i.e., the map search range of the current map zoom level = the map search range × 2 of the previous map zoom level, and then the distance between the population data points on the previous map zoom level (e.g., the map zoom level at level 18) is calculated accordingly, the set of points to be aggregated within the map search range of the secondary map zoom level is determined, the population data aggregation point of the secondary map zoom level is obtained, and thus the hierarchical clustering process is performed until the population data aggregation point of the minimum zoom level is obtained.
As can be seen, in the hierarchical clustering process provided by the present application, the population data corresponding to the previous map zoom level is determined as the population data to be searched for obtaining the population aggregation point of the current map zoom level, 2 times of the map search range of the previous map zoom level is the map search range of the current map zoom level, the population data to be searched are traversed, a set of the population data to be aggregated is sequentially determined (for example, at least two population data points corresponding to the previous map zoom level, the aggregated population data points do not participate in traversal search any more), and aggregation processing is performed on the population data points to obtain the population display point, i.e., the population aggregation point, on the current map zoom level.
Step S23, clustering population data of a plurality of population aggregation points to be aggregated, which correspond to the population aggregation points and are from the previous map zooming level, to obtain clustering information of the population aggregation points of the current map zooming level;
as can be known by combining the hierarchical clustering process described above, the to-be-aggregated point constituting any population aggregation point on the current map zoom level is a population data point from the previous map zoom level (i.e., a map zoom level displaying a larger map range), so that when the clustering information of the population aggregation point of the current map zoom level is determined, the population data of each of the population data points to be aggregated constituting the population aggregation point can be clustered, for example, the geographic coordinates of each of the population data points to be aggregated are subjected to average operation, and the obtained average coordinate is determined as the clustering coordinate of the corresponding population aggregation point on the current map zoom level; summing the population numbers of the multiple points to be aggregated under the same attribute information, for example, summing the numbers of the floating population or the standing population to obtain the total floating population number or the total standing population number of the corresponding population aggregation point on the current map scaling level, which may be determined according to the attribute category included in the population data and the statistical manner thereof, which is not described in detail herein.
And step S24, writing the clustering information into a data cache table corresponding to the map zooming level for storage.
In order to facilitate subsequent query of population data required to be displayed, after the clustering information of each population aggregation point corresponding to each map scaling level is obtained according to the hierarchical clustering mode, the clustering information can be written into a corresponding data cache table for storage. Regarding the storage manner and the usage manner of the cluster information by the data cache table, reference may be made to the description of the corresponding part of the context, and this embodiment is not described in detail herein.
For example, as an alternative schematic diagram of the data cache table shown in fig. 3, the data cache tables of each map scaling hierarchy may include: the determined coordinate field corresponding to the clustering coordinate of the population aggregation points on the map zoom level, and the attribute fields corresponding to the cluster attribute information, such as the population numbers corresponding to different population type fields of the resident population, the floating population, the overseas population, the labor population and the like shown in fig. 3, and the population numbers corresponding to the fields of the infant, the child, the teenager, the young, the middle-aged and the elderly and the like which can be determined according to the population age according to the needs; according to the male field determined by the gender of the population, the number of the population corresponding to the male field, and the like, the content of each attribute field is not shown in fig. 3, and the content can be flexibly adjusted according to the display requirement of actual population data. In addition, in order to distinguish the mouth aggregation points, the number dzqc of the house number where each mouth aggregation point is located may be recorded in the data cache table, and the area code xzqdm, the geographic code dzdm, and the like where each mouth aggregation point is located may also be recorded.
Referring to fig. 4, which is a flowchart illustrating a further optional example of the population data display method proposed in the present application, this embodiment may describe an optional detailed implementation of the population data display method described above, and as shown in fig. 4, the method may include:
step S41, acquiring a plurality of pieces of population data from at least one data source; each piece of population data comprises geographic coordinates and at least one attribute information;
in combination with the above description about multiple data sources of population data, population data can be queried through a map service, or population data can be queried by connecting with a geographic database, and the method for acquiring population data is not limited in the present application. The at least one attribute information included in each piece of demographic data, as analyzed above, may be determined by population type, population age group, population gender, or other means, so as to count the population number of each of the different attribute information.
S42, sequencing the plurality of pieces of population data according to the geographic coordinates to obtain corresponding population sequencing results;
step S43, carrying out partition processing on a plurality of pieces of population data according to the population sorting result and the preset population grouping number to obtain a plurality of population data sets;
in practical application, because the data volume of the population data from one or more data sources is often very large, and the resources of the computer device are difficult to support processing (i.e., full-scale calculation) of the mass population data, when the resources of the computer device are not sufficient to support the full-scale calculation, the cache of the mass population data can be realized in a distributed calculation manner, so that the acquired population data can be written into a database (such as a relational database) for storage, and then the population data are partitioned, so that a plurality of population data in one partition can be queried each time for processing, the processing manner of the population data of each partition is similar, and the detailed description is omitted.
Optionally, as shown in the process population data block processing schematic diagram shown in fig. 5, the present application may perform block processing on massive population data in a manner of constructing a data network, for example, the present application may perform block processing on massive population data in a manner of partitioning according to geographic coordinates (e.g., longitude and latitude coordinates of population data points) included in the population data and a preset population group number (e.g., 10 ten thousand) to obtain a plurality of data networks to be calculated, i.e., a plurality of population data sets are obtained, and then, for a plurality of population data corresponding to each data grid to be calculated (i.e., a corresponding one of the population data sets), the present embodiment may perform processing according to the method provided in this embodiment, that is, after the plurality of population data in one data grid to be calculated (i.e., a plurality of population data included in a corresponding population data set) are processed to obtain data cache tables corresponding to different map scaling levels, the plurality of population data in the next data grid to be calculated may be read, and according to the method described in this embodiment, the data cache tables corresponding to continue updating the data corresponding to the data in different map scaling levels, that newly obtained cache information is written into the corresponding data cache tables, and thus perform the clustering processing on the data of each partitioned data in each map, so that the corresponding to record all the corresponding to the corresponding scaling levels of the clustering points in the corresponding to the map.
Step S44, determining population data to be searched, which correspond to a plurality of map zooming levels respectively, for a plurality of population data contained in each population data set;
after the above analysis, after the multiple pieces of population data from the multiple data sources are blocked and hierarchical classification processing is performed according to multiple map scaling levels, multiple pieces of population data included in one population data set can be obtained each time, for example, 10 ten thousand pieces of population data are queried each time, and hierarchical clustering processing is performed on the population data by using a greedy clustering algorithm. For a plurality of pieces of population data contained in one population data set, a class model can be constructed, and the geographic coordinates and at least one attribute information of the plurality of pieces of population data are recorded so as to perform statistical analysis subsequently.
Because the display map ranges of different map zoom levels are different (i.e. the data points that can be displayed on the map are different), the population data corresponding to different map zoom levels are different, and the higher the map zoom level is, the smaller the corresponding display map range is, the smaller the corresponding population data volume may be, but the more detailed the population data points are. At least one piece of population data may exist in the population data corresponding to the adjacent map zooming levels, and the population data of each population data point in the display map range can be determined according to the display map ranges corresponding to different map zooming levels and is marked as the population data to be searched of the corresponding map zooming levels.
Step S45, determining the respective map search ranges of a plurality of map zooming levels based on the screen search range;
step S46, starting from the maximum map zooming level layer by layer, traversing the population data to be searched corresponding to the previous map zooming level by using the corresponding map searching range to obtain a plurality of point sets to be aggregated;
regarding the implementation process of step S45 and step S46, reference may be made to the description of the corresponding parts of the above embodiments, and the embodiments of the present application are not described in detail herein. The screen search range can be a screen search radius, and can be determined according to a screen display size corresponding to a map displayed on a demographic data display page output by a client. In this way, after the geographic distance between two population data points is obtained through calculation, if the geographic distance is smaller than or equal to the search radius, the two population data points may be determined as data points to be aggregated, and so on, all the population data to be searched on the previous map scaling level are traversed to obtain a plurality of point sets to be aggregated for the current map scaling level.
As can be seen from the above description of the multiple map zoom levels, in the multiple map zoom levels such as levels 1-20, the higher the level, the smaller the corresponding display map range, but the more detailed the map area, so the amount of the population data on the multiple map zoom levels can be in the data pyramid structure as shown in fig. 6.
Step S47, carrying out average value operation on geographic coordinates of a plurality of pieces of population data from the previous map scaling level contained in each to-be-aggregated point set to obtain clustering coordinates of corresponding population aggregation points;
step S48, summing the population number of the same attribute information in a plurality of pieces of population data from the previous map scaling level contained in each to-be-aggregated point set to obtain the total population number of each clustering attribute information of the corresponding population aggregated point;
step S49, using the cluster coordinates of the same population aggregation point on the obtained current map zoom level and the total population number of each cluster attribute information to form cluster information of the population aggregation point;
and step S410, writing the clustering information of each human mouth aggregation point into a data cache table corresponding to a map zooming level for storage.
In combination with the above description about the data cache table, the present application may sequentially calculate an average coordinate as a cluster coordinate of a corresponding population aggregation point for all sets of points to be aggregated, unify the total population number under the same attribute information as a population attribute under the attribute information (which may be referred to as cluster attribute information) of the population aggregation point, advance the processing until multiple pieces of population data included in a current population data set obtain population aggregation points and cluster information of multiple map scaling levels in a corresponding map range, then query a next population data set, continue hierarchical clustering processing for the multiple pieces of population data included in the next population data set according to the above method, determine the population aggregation points and cluster information of multiple map scaling levels in the corresponding map range, and implement processes similar to the present application are not described in detail. Therefore, the data cache tables corresponding to the map scaling levels can be gradually updated and determined by utilizing the population data contained in the population data sets, and compared with the method for directly carrying out statistical processing on massive population data, the method for processing the map scaling levels carries out hierarchical clustering processing on the blocked population data, reduces the requirement on the data processing capacity of computer equipment, and improves the data processing efficiency.
Referring to fig. 7, which is a schematic flow chart of yet another optional example of the population data display method provided in the present application, this embodiment may still be described from the service server side, and regarding a hierarchical clustering implementation process of population data, reference may be made to the description of the corresponding part of the above embodiment, and this embodiment may describe how to implement an update process of a data cache table on the basis of not affecting a user query population data distribution display in a case of storing population clustering points and clustering information thereof (i.e., a data cache process) of obtained map scaling hierarchies and updating population data, as shown in fig. 7, the method may include:
step S71, responding to a population data updating event, and updating population clustering points of a plurality of map zooming levels;
under the condition that population data changes and clustering needs to be carried out again, the record content of the data cache table of the service server can be updated quickly by a user on the basis that the normal operation of the current population data query service is not influenced and the population quantity distribution condition under certain attribute information in a certain area can be checked by a client. Therefore, after the service server responds to the population data update event, the population aggregation points and the cluster information of the population aggregation points of the map scaling levels can be updated according to the method described in the above embodiment, and the cluster information is updated to the data cache tables corresponding to the map scaling levels.
Step S72, acquiring the cluster information corresponding to the updated population aggregation point, and writing the cluster information into an undetermined cache table of a map scaling hierarchy where the corresponding population aggregation point is located;
the method for acquiring the updated cluster information of the population aggregation point may refer to the description of the corresponding part of the above embodiment, and this embodiment is not described in detail here. The pending cache table2_ zoom corresponding to each of the map scaling hierarchies may be located in the relational database, and when population data from at least one data source is obtained for the first time, the pending cache table2_ zoom corresponding to a different map scaling hierarchy may be created, so that, according to the method described above, after the cluster information of the population aggregation point corresponding to a different map scaling hierarchy in each population data partition is obtained, the corresponding pending cache table2_ zoom may be inserted for caching. Similarly, the updated cluster information may be inserted into the pending cache table2_ zoom corresponding to the map zoom level.
Step S73, determining data cache tables corresponding to a plurality of current map zooming levels as transition cache tables;
step S74, determining pending cache tables corresponding to a plurality of map zooming levels as new data cache tables;
step S75, determining the transition cache table as a new cache table to be determined corresponding to the map zooming level;
in the embodiment of the application, in order to avoid interfering with the use of a data cache table of any map scaling hierarchy by a current user and cause the feedback of wrong population data to a user client, the current pending cache table may be updated to the data cache table of the corresponding map scaling hierarchy, and then the original data cache table of the map scaling hierarchy is determined to be a new pending cache table, so that the user may subsequently use the new data cache table to obtain the target population data of a required target population aggregation point, and the reliability and accuracy of the rendered and output population thermodynamic diagram are improved.
Based on this, in some embodiments, a renaming manner that takes very short time may be adopted to exchange and use the pending cache tables and the data cache tables of the same map scaling hierarchy, as in the above-described steps, the data cache tables table _ zoom currently used by each map scaling hierarchy may be sequentially renamed to table1_ zoom, that is, the data cache table _ zoom currently used by each map scaling hierarchy is determined to be used by the transition cache table1_ zoom, and then, the pending cache table2_ zoom of each map scaling hierarchy is renamed to table _ zoom, that is, the pending cache table2_ zoom of each map scaling hierarchy is determined to be used by the new data cache table _ zoom.
As can be seen, in the present application, data recorded in the data cache table of each map zoom level may be stored in the corresponding table2_ zoom, after the data is cached, the data cache table _ zoom formally used by the map zoom level is renamed, and then the table2_ zoom is renamed as the data cache table _ zoom formally used by the corresponding map zoom level, so as to implement fast update of the data recorded in the data cache table, but is not limited to the update implementation described in this embodiment.
And step S76, clearing cluster information of each new pending cache table record of a plurality of map scaling levels.
After the data in the data cache tables of the map scaling levels are updated according to the method, the data of the table2_ zoom records of the pending cache tables of the map scaling levels can be emptied, so that after the change of the population data is detected subsequently, the data of the table _ zoom records of the data cache tables can be updated in time according to the method described above.
Referring to fig. 8, which is a schematic flowchart of yet another optional example of the demographic data display method provided in the present application, this embodiment may describe, from the client side, an implementation process of the demographic data display method, as shown in fig. 8, the method may include:
step S81, outputting a population data display page, and displaying a map with a target map zooming level and a target display map range on the population data display page;
when a user needs to view population data distribution conditions of an area, the user can start a client supporting population data viewing services by using a terminal device, enter a population data display page, and display a map of a target display map range needing to view population data distribution on the population data display page by adjusting the map zooming level, wherein the implementation process is not described in detail in the application.
Step S82, a population data display request containing a target map zooming level and a target display map range is sent to a service server;
step S83, receiving target population data fed back by the service server responding to the population data display request;
after the client determines a target display map range in which a user wants to view population data distribution and a corresponding target map zoom level, in order to obtain target population data to be displayed, a population data display request including the target map zoom level and the target display map range can be generated and sent to the service server, and then, referring to a population data display method executed by the service server side, the client can obtain population data corresponding to each target population aggregation point corresponding to the target map zoom level and record the population data as the target population data.
The target population aggregation point performs matching processing on a plurality of cluster coordinates recorded in the target data cache table corresponding to the target map zoom level based on the target display map range, and the implementation process may refer to the description of the corresponding part of the above embodiment, which is not described in detail in this embodiment. As analyzed above, each target demographic data may include cluster information corresponding to a target demographic aggregation point, which may include, but is not limited to, cluster coordinates, total population for each cluster attribute information, and the like.
Step S84, performing thermodynamic diagram rendering on the target population data, and displaying population thermodynamic diagrams on a map of a population display page;
in combination with the above description about the demographic data, after the client obtains the target demographic data in the target display map range from the background service server, in order to more simply and visually display the population quantity distribution condition of different attribute information in the range, the population data distribution condition can be displayed in a thermodynamic diagram manner. A population thermodynamic diagram, as shown in fig. 9, can represent population data distribution under different attributes within the target display map range.
It should be understood that, when the target display map range changes, that is, the map range in which a user needs to view demographic data distribution changes, the user may perform an input operation using an input device or directly on the touch screen to change the target display map range, for example, zoom or enlarge the map range, adjust the display map position, and the like, the client may monitor an update event for the target display map range and/or the target map zoom level, and may obtain a demographic data display request for a new target display map range and a target map zoom level to update the displayed demographic diagram, and send the demographic data display request to the service server, so that the service server responds to the demographic data display request to obtain and feed back new target demographic data according to the method described above, and the client updates the demographic data displayed on the demographic data display page, that is, performs a thermal rendering on the obtained target demographic data to update the display content of the demographic diagram on the map. The dynamic update implementation process of the population thermodynamic diagram is not described in detail in the present application.
In summary, for ten million levels of population data volume, the service server aggregates adjacent population data points within a certain range to generate corresponding population aggregation points, so as to reduce the number of display points on the map, i.e., reduce the density of the display points. Specifically, for each display point of a plurality of map zooming levels, a population aggregation point of the current map zooming level can be generated according to a population data point of the previous map zooming level, and the clustering information of the population aggregation point is written into a corresponding data cache table. Therefore, when the client displays population data distribution, only the required target population data needs to be inquired from the data cache table corresponding to the current target map scaling level, and compared with a mode of directly inquiring from massive population data, the method greatly improves the target population data inquiry efficiency and improves population data display response efficiency.
And S85, responding to selection operation aiming at any attribute of the population thermodynamic diagram, and updating the population distribution of the population thermodynamic diagram under the selected attribute according to the population number of the target population aggregation point with the selected attribute of the target map scaling hierarchy.
Referring to the population thermodynamic diagram shown in fig. 9, since each piece of population data generally includes a plurality of attribute information, including but not limited to a plurality of attribute information divided according to population types, population ages, population genders or other dimensions shown in the prompt interface of the population thermodynamic diagram shown in fig. 9, when a user views the population thermodynamic diagram displayed by the client, the user can directly select to view population quantity distribution of a certain attribute information, thereby improving interactivity.
For example, if the user needs to view the population distribution of the constant population in the determined target display map range, the population type of the constant population may be selected in a prompt interface of the population thermodynamic diagram, and in response to the operation of selecting the attribute of the constant population, the target population data corresponding to the constant population may be obtained according to the method described above, and the population thermodynamic diagram of the constant population in each area in the target display map range is rendered, so as to obtain the population thermodynamic diagram of the population distribution of the constant population as shown in fig. 9.
Similarly, if the user needs to check the population quantity distribution condition of other attribute information, the corresponding attribute information can be selected in the prompt interface of the population thermodynamic diagram, and the attribute field displayed by the population thermodynamic diagram is updated. Therefore, the population thermodynamic diagram can be dynamically updated in the interaction mode, so that population quantity distribution corresponding to the required attribute information is displayed. The corresponding population is characterized by a thermodynamic diagram color gradient, but is not limited to the thermodynamic diagram presentation shown in fig. 9. For the display state of the population thermodynamic diagram, the colors of different population number gradients, corresponding transparencies and the like can be dynamically adjusted.
In summary, according to the method for displaying population data performed by the service server, for mass population data, data cache tables corresponding to different map scaling levels are constructed, and clustering information of population aggregation points on corresponding map scaling levels is recorded, so that a user wants to view population distribution conditions of various places under a certain attribute information in a certain map range, a front-end client can quickly (such as millisecond level) display population thermodynamic diagrams of the map range under the attribute information, can respond to dynamic selection of the attribute information by the user, switch and display the population thermodynamic diagrams under the selected attribute information in real time and high efficiently, meet the requirement of the user on population thermodynamic diagrams under different attribute information of different places, and visually know the population distribution conditions under the attribute information.
Referring to fig. 10, a schematic structural diagram of an alternative example of the demographic data display apparatus proposed in the present application, which may be described from the service server side, as shown in fig. 10, may include:
the population data display request responding module 101 is configured to respond to a population data display request sent by a client, and obtain a target map zoom level and a target display map range of a population data display page currently output by the client;
a target data cache table query module 102, configured to query, from data cache tables corresponding to multiple map zoom levels, a target data cache table corresponding to the target map zoom level;
the data cache table records population aggregation points corresponding to map scaling levels and corresponding clustering information, wherein the clustering information comprises clustering coordinates of the corresponding population aggregation points and the total population number of each piece of clustering attribute information; the population aggregation points of the map zooming levels are obtained by carrying out hierarchical clustering processing on population data from at least one data source based on the screen searching range and the map zooming level where the population aggregation points are located;
a target population aggregation point determining module 103, configured to perform matching processing on the multiple cluster coordinates recorded in the target data cache table based on the target display map range, and determine a target population aggregation point corresponding to each of the multiple matched target cluster coordinates;
the target population data feedback module 104 is configured to feed back the target population data corresponding to the target population aggregation point to the client, and the client performs thermodynamic diagram rendering on the target population data to display a population thermodynamic diagram in the population data display page, where the population thermodynamic diagram can represent population data distribution conditions under different attributes within the target display map range.
In some embodiments, in order to obtain the data cache table corresponding to each of the plurality of map scaling levels, so that the target data cache table query module 102 can query the required target data cache table to determine the plurality of population aggregation points corresponding to the target map scaling level and the corresponding cluster information thereof, as shown in fig. 11, the apparatus may further include:
an information acquisition module 105, configured to acquire a screen search range and a plurality of map zoom levels; the screen search range is determined based on pixel units of a client display screen; the multiple map zooming levels are determined based on a sky map standard, and the higher the map zooming level is, the smaller the corresponding display map range is;
a to-be-aggregated point set obtaining module 106, configured to perform hierarchical clustering processing on population data from at least one data source based on the screen search range from a maximum map zoom level in the multiple map zoom levels to obtain multiple to-be-aggregated point sets corresponding to the multiple map zoom levels respectively;
the clustering module 107 is configured to perform clustering on population data from a previous map scaling level included in each of the multiple sets of points to be aggregated to obtain a population aggregation point corresponding to a current map scaling level and clustering information of the population aggregation point;
and the storage module 108 is configured to write the cluster information into a data cache table corresponding to the map zooming level for storage.
In still other embodiments, as shown in fig. 11, the apparatus may further include:
a population data acquisition module 109 for acquiring a plurality of population data from at least one data source; each piece of population data comprises geographic coordinates and at least one attribute information;
a population data sorting module 1010, configured to sort the plurality of pieces of population data according to the geographic coordinates, so as to obtain corresponding population sorting results;
and the partitioning processing module 1011 is configured to perform partitioning processing on the pieces of population data according to the population ranking result and a preset population grouping number to obtain a plurality of population data sets, so as to update and determine the data cache tables corresponding to the plurality of map scaling levels by using the pieces of population data included in the plurality of population data sets.
Optionally, the to-be-aggregated point set obtaining module 106 may include:
the population data to be searched determining unit is used for determining population data to be searched, which correspond to the map zooming levels respectively, according to a plurality of pieces of population data contained in each population data set;
a map search range determination unit for determining a map search range for each of the plurality of map zoom levels based on the screen search range;
the aggregation point set obtaining unit is used for traversing the population data to be searched corresponding to the previous map zoom level by using the corresponding map search range from the maximum map zoom level layer by layer to obtain a plurality of aggregation point sets;
accordingly, the cluster processing module 107 may include:
a clustering coordinate obtaining unit, configured to perform average operation on geographic coordinates of multiple pieces of population data from a previous map scaling level included in each to-be-aggregated point set, to obtain clustering coordinates of corresponding population aggregation points;
a total population number obtaining unit, configured to sum population numbers of the same attribute information in multiple pieces of population data from a previous map scaling level included in each to-be-aggregated point set, so as to obtain a total population number of each cluster attribute information of a corresponding population aggregation point;
and the cluster information forming unit is used for forming cluster information of the population aggregation point by using the cluster coordinates of the same population aggregation point on the obtained current map scaling level and the total population number of each piece of cluster attribute information.
In still other embodiments, as shown in fig. 12, the apparatus may further include:
a population cluster point updating module 1012 for updating population cluster points of the plurality of map scaling levels in response to a population data updating event;
the clustering information writing module 1013 is configured to obtain clustering information corresponding to the updated population aggregation point, and write the clustering information into an undetermined cache table of a map scaling hierarchy in which the corresponding population aggregation point is located;
a data cache table updating module 1014, configured to update the current pending cache table to a data cache table corresponding to the map zoom level, and determine an original data cache table of the map zoom level as a new pending cache table;
the data clearing module 1015 of the pending cache table is configured to clear clustering information of each new pending cache table record of the multiple map scaling hierarchies;
optionally, the data cache table updating module 1014 may include:
a transition cache table determining unit, configured to determine, as a transition cache table, a data cache table corresponding to each of the plurality of map scaling levels at present;
a data cache table updating unit, configured to determine to-be-cached tables corresponding to the multiple map scaling hierarchies as new data cache tables;
and the pending cache table updating unit is used for determining the transition cache table as a new pending cache table corresponding to the map scaling hierarchy.
Referring to fig. 13, a schematic diagram of a structure of yet another alternative example of the demographic data display apparatus proposed in the present application, this embodiment may be described from a client side, as shown in fig. 13, the apparatus may include:
a demographic data display page output module 131, configured to output a demographic data display page on which a map having a target map zoom level and a target display map range is displayed;
a population data display request sending module 132, configured to send a population data display request including the target map zoom level and the target display map range to a service server;
a target population data receiving module 133, configured to receive target population data fed back by the service server in response to the population data display request;
wherein the target population data is population data corresponding to a target population aggregation point of the target map zoom level; the target population aggregation point performs matching processing on a plurality of cluster coordinates recorded by a target data cache table corresponding to the target map scaling level based on the target display map range; the target population data comprises respective clustering information of a plurality of target population aggregation points, and the clustering information comprises clustering coordinates and total population number of each clustering attribute information;
a population thermodynamic diagram display module 134, configured to perform thermodynamic diagram rendering on the target population data, and display a population thermodynamic diagram on a map of the population display page; the population thermodynamic diagram can represent population data distribution under different attributes within the target display map.
Optionally, the apparatus may further include:
a population distribution updating module, configured to update the population distribution under the selected attribute in the population thermodynamic diagram according to the population quantity of the target population aggregation point with the selected attribute in the target map scaling hierarchy in response to a selection operation for any attribute of the population thermodynamic diagram;
and the thermodynamic diagram updating module is used for monitoring an updating event aiming at the target display map range and/or the target map scaling level, and updating the population thermodynamic diagram displayed on the population data display page according to the target population data fed back again by the service server.
It should be noted that, various modules, units, and the like in the foregoing apparatus embodiments may be stored in a memory as program modules, and the processor may execute the program modules stored in the memory to implement corresponding functions, or may be implemented by combining the program model and hardware, and for the functions implemented by the program modules and their combinations and the achieved technical effects, reference may be made to the description of corresponding parts in the foregoing method embodiments, and this embodiment is not described in detail again.
The embodiment of the present application further provides a computer-readable storage medium, where a computer program is stored, and the computer program is loaded and executed by a processor to implement the steps of the human mouth data display method executed by the corresponding service server side or the client side.
Referring to fig. 14, a schematic diagram of a hardware structure of an alternative example of a computer device suitable for the demographic data display method provided in the present application is shown, where the computer device may be a terminal device where the service server or the client is located, and the client may interact with the service server to implement the demographic data display method provided in the present application. The hardware structure of the service server is illustrated by taking a computer device as an example, as shown in fig. 14, the computer device may include, but is not limited to: a communication module 141, a memory 142, and a processor 143, wherein:
the communication module 141 may include a communication module capable of implementing data interaction by using a wireless communication network, such as a WIFI module, a 5G/6G (fifth generation mobile communication network/sixth generation mobile communication network) module, a GPRS module, and the like, so as to implement communication between the service server and other devices (such as a terminal device, a database, and the like), and satisfy data interaction between corresponding devices. It is understood that the communication module 141 may also include a communication interface, such as a USB interface, a serial/parallel interface, an I/O port, etc., for implementing data interaction between internal components of the computer device.
The memory 142 may be used to store programs for implementing the population data display methods described in the above method embodiments; the processor 143 may load and execute the program stored in the memory to implement the steps of the population data display method described in the above corresponding method embodiment, and the specific implementation process may refer to the description of the corresponding parts in the above embodiment, which is not described again.
In the embodiment of the present application, the memory 142 may include a high-speed random access memory, and may further include a nonvolatile memory, such as at least one magnetic disk storage device or other volatile solid-state storage device. The processor 143 may be a Central Processing Unit (CPU), an application-specific integrated circuit (ASIC), a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), an off-the-shelf programmable gate array (FPGA), or other programmable logic devices.
It should be understood that the structure of the computer device shown in fig. 14 does not constitute a limitation to the computer device in the embodiment of the present application, and in practical applications, the computer device may include more components than those shown in fig. 14, or some components may be combined, for example, in the case that the computer device is a terminal device, as shown in fig. 15, the computer device may further include at least one input component such as a touch sensing unit for sensing a touch event on the touch display panel, a keyboard, a mouse, a camera, a microphone, and the like; at least one output component such as a display, speaker, vibration mechanism, light, etc.; an antenna; a sensor module; for example, the power module and the like, fig. 15 does not show the listed input components and output components, and the hardware structure can be determined according to the type of the terminal device and the functional requirements thereof, which is not listed herein.
Finally, it should be noted that, with respect to the above-described embodiments, unless the context clearly dictates otherwise, the terms "a", "an" and/or "the" are not intended to mean in the singular, but may include the plural. In general, the terms "comprises" and "comprising" merely indicate that steps and elements are included which are explicitly identified, that the steps and elements do not form an exclusive list, and that a method or apparatus may include other steps or elements. An element defined by the phrase "comprising a component of ' 8230 ' \8230; ' does not exclude the presence of additional identical elements in the process, method, article, or apparatus that comprises the element.
In the description of the embodiments herein, "/" means "or" unless otherwise specified, for example, a/B may mean a or B; "and/or" herein is merely an association describing an associated object, and means that there may be three relationships, e.g., a and/or B, which may mean: a exists alone, A and B exist simultaneously, and B exists alone. In addition, in the description of the embodiments of the present application, "a plurality" means two or more than two.
Reference herein to terms such as "first," "second," or the like, is used for descriptive purposes only and to distinguish one operation, element, or module from another operation, element, or module without necessarily requiring or implying any actual such relationship or order between such elements, operations, or modules. And are not to be construed as indicating or implying relative importance or implicitly indicating the number of technical features indicated, whereby a feature defined as "first" or "second" may explicitly or implicitly include one or more of such features.
In addition, in the present specification, the embodiments are described in a progressive or parallel manner, each embodiment focuses on differences from other embodiments, and the same and similar parts among the embodiments may be referred to each other. The device, the computer device and the storage medium disclosed by the embodiment correspond to the method disclosed by the embodiment, so that the description is relatively simple, and the relevant points can be referred to the description of the method part.
Those of skill would further appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both, and that the various illustrative components and steps have been described above generally in terms of their functionality in order to clearly illustrate this interchangeability of hardware and software. Whether these functions are performed in hardware or software depends on the specific application of the solution and design pre-set conditions. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application.
The previous description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present application. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the disclosure. Thus, the present application is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims (10)

1. A method for displaying demographic data, the method comprising:
responding to a population data display request sent by a client to obtain a target map zooming level and a target display map range of a population data display page currently output by the client;
inquiring a target data cache table corresponding to the target map zooming level from data cache tables corresponding to a plurality of map zooming levels; the data cache table records population aggregation points corresponding to map scaling levels and corresponding clustering information, wherein the clustering information comprises clustering coordinates of the corresponding population aggregation points and the total population number of each piece of clustering attribute information; the population aggregation points of the map zooming levels are obtained by carrying out hierarchical clustering processing on population data from at least one data source based on the screen searching range and the map zooming level where the population aggregation points are located;
matching the plurality of cluster coordinates recorded by the target data cache table based on the target display map range, and determining a target population aggregation point corresponding to each of the matched plurality of target cluster coordinates;
and feeding back target population data corresponding to the target population aggregation point to the client, and performing thermodynamic diagram rendering on the target population data by the client to display a population thermodynamic diagram in the population data display page, wherein the population thermodynamic diagram can represent population data distribution conditions under different attributes in the range of the target display map.
2. The method of claim 1, wherein determining the data cache table corresponding to each of the plurality of map zoom levels comprises:
acquiring a screen search range and a plurality of map zooming levels; the screen search range is determined based on pixel units of a client display screen; the multiple map zooming levels are determined based on a sky map standard, and the higher the map zooming level is, the smaller the corresponding display map range is;
carrying out hierarchical clustering processing on population data from at least one data source based on the screen search range from the maximum map zooming level in the map zooming levels to obtain a plurality of to-be-aggregated point sets corresponding to the map zooming levels respectively;
clustering population data from the previous map zooming level contained in each of the plurality of to-be-aggregated point sets to obtain population aggregation points corresponding to the current map zooming level and clustering information of the population aggregation points;
and writing the clustering information into a data cache table corresponding to the map zooming level for storage.
3. The method of claim 2, further comprising:
obtaining a plurality of pieces of demographic data from at least one data source; each piece of population data comprises geographic coordinates and at least one attribute information;
sequencing the population data according to the geographic coordinates to obtain corresponding population sequencing results;
and performing partition processing on the population data according to the population sorting result and a preset population grouping number to obtain a plurality of population data sets, and updating and determining data cache tables corresponding to the map scaling levels by using the population data contained in the population data sets.
4. The method of claim 3, wherein the hierarchically clustering the population data from at least one data source starting from a largest map zoom level of the plurality of map zoom levels based on the screen search range to obtain a plurality of to-be-aggregated point sets corresponding to the plurality of map zoom levels comprises:
determining population data to be searched corresponding to the plurality of map zooming levels respectively aiming at a plurality of pieces of population data contained in each population data set;
determining a map search range for each of the plurality of map zoom levels based on the screen search range;
and traversing the population data to be searched corresponding to the previous map zooming level by utilizing the corresponding map searching range from the maximum map zooming level layer by layer to obtain a plurality of point sets to be aggregated.
5. The method according to claim 4, wherein the clustering population data from a previous map scaling level corresponding to the plurality of to-be-aggregated point sets to obtain the population aggregation point corresponding to a current map scaling level and the clustering information of the population aggregation point includes:
carrying out average operation on respective geographic coordinates of a plurality of pieces of population data from the previous map scaling level contained in each to-be-aggregated point set to obtain clustering coordinates of corresponding population aggregation points;
summing the population number of the same attribute information in a plurality of pieces of population data from the previous map scaling level contained in each to-be-aggregated point set to obtain the total population number of each clustering attribute information of the corresponding population aggregation point;
and forming the cluster information of the population aggregation point by using the cluster coordinates of the same population aggregation point on the obtained current map zoom level and the total population number of each cluster attribute information.
6. The method according to any one of claims 1-5, further comprising:
updating population cluster points for each of the plurality of map zoom levels in response to a population data update event;
acquiring cluster information corresponding to the updated population aggregation point, and writing the cluster information into an undetermined cache table of a map scaling hierarchy where the corresponding population aggregation point is located;
updating the current undetermined cache table into a data cache table corresponding to the map zooming hierarchy, and determining the original data cache table of the map zooming hierarchy as a new undetermined cache table;
clearing cluster information recorded by each new pending cache table of the plurality of map scaling levels;
wherein, the updating the current pending cache table to the data cache table corresponding to the map zoom level, and then determining the original data cache table of the map zoom level as the new pending cache table includes:
determining data cache tables corresponding to the plurality of map zooming levels as transition cache tables;
determining pending cache tables corresponding to the map scaling levels as new data cache tables;
determining the transition cache table as a new pending cache table corresponding to the map zoom level.
7. A method of displaying demographic data, the method comprising:
outputting a population data display page, and displaying a map with a target map zooming level and a target display map range on the population data display page;
receiving a demographic data display request including the target map zoom level and the target display map range from a service server;
receiving target population data fed back by the service server in response to the population data display request; wherein the target population data is population data corresponding to a target population aggregation point of the target map zoom level; the target population aggregation point performs matching processing on a plurality of cluster coordinates recorded by a target data cache table corresponding to the target map zooming level based on the target display map range; the target population data comprises respective clustering information of a plurality of target population aggregation points, and the clustering information comprises clustering coordinates and total population number of each clustering attribute information;
performing thermodynamic diagram rendering on the target population data, and displaying a population thermodynamic diagram on a map of the population display page; the population thermodynamic diagram can represent population data distribution under different attributes within the target display map.
8. The method of claim 7, further comprising:
in response to a selection operation aiming at any attribute of the population thermodynamic diagram, updating the population thermodynamic diagram to display population distribution under the selected attribute according to the population of the target population aggregation point with the selected attribute of the target map zooming level;
and monitoring an updating event aiming at the target display map range and/or the target map zooming level, and updating the population thermodynamic diagram displayed on the population data display page according to the target population data fed back again by the service server.
9. A demographic data display apparatus, comprising:
the population data display request response module is used for responding to a population data display request sent by a client to obtain a target map zooming level and a target display map range of a population data display page currently output by the client;
the target data cache table query module is used for querying a target data cache table corresponding to a target map zooming level from data cache tables corresponding to a plurality of map zooming levels; the data cache table records population aggregation points corresponding to map scaling levels and corresponding clustering information, wherein the clustering information comprises clustering coordinates of the corresponding population aggregation points and the total population number of each piece of clustering attribute information; the population aggregation points of the map zooming levels are obtained by carrying out hierarchical clustering processing on population data from at least one data source based on the screen searching range and the map zooming level where the population aggregation points are located;
the target population aggregation point determining module is used for matching the plurality of cluster coordinates recorded by the target data cache table based on the target display map range, and determining a target population aggregation point corresponding to each of the plurality of matched target cluster coordinates;
and the target population data feedback module is used for feeding target population data corresponding to the target population aggregation point back to the client, and performing thermodynamic diagram rendering on the target population data by the client so as to display a population thermodynamic diagram in the population data display page, wherein the population thermodynamic diagram can represent population data distribution conditions under different attributes in the range of the target display map.
10. A demographic data display apparatus, the apparatus comprising:
the population data display page output module is used for outputting a population data display page, and a map with a target map zooming level and a target display map range is displayed on the population data display page;
the population data display request sending module is used for sending a population data display request containing the target map zooming level and the target display map range to a service server;
the target population data receiving module is used for receiving the target population data fed back by the service server in response to the population data display request; the target population data is population data corresponding to a target population aggregation point of the target map zooming level; the target population aggregation point performs matching processing on a plurality of cluster coordinates recorded by a target data cache table corresponding to the target map zooming level based on the target display map range; the target population data comprises respective clustering information of a plurality of target population aggregation points, and the clustering information comprises clustering coordinates and total population number of each clustering attribute information;
a population thermodynamic diagram display module, configured to perform thermodynamic diagram rendering on the target population data, and display population thermodynamic diagrams on a map of the population display page; the population thermodynamic diagram can represent population data distribution under different attributes within the target display map.
CN202211189974.XA 2022-09-28 2022-09-28 Population data display method and device Active CN115658779B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211189974.XA CN115658779B (en) 2022-09-28 2022-09-28 Population data display method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211189974.XA CN115658779B (en) 2022-09-28 2022-09-28 Population data display method and device

Publications (2)

Publication Number Publication Date
CN115658779A true CN115658779A (en) 2023-01-31
CN115658779B CN115658779B (en) 2023-08-18

Family

ID=84985934

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211189974.XA Active CN115658779B (en) 2022-09-28 2022-09-28 Population data display method and device

Country Status (1)

Country Link
CN (1) CN115658779B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116503539A (en) * 2023-04-19 2023-07-28 浪潮智慧科技有限公司 Thermodynamic diagram self-adaptive rendering method, device and medium based on space map

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8223172B1 (en) * 2011-09-26 2012-07-17 Google Inc. Regional map zoom tables
CN109657017A (en) * 2018-11-05 2019-04-19 北京市天元网络技术股份有限公司 It polymerize the methods of exhibiting and device of point set in map
CN110309381A (en) * 2019-07-04 2019-10-08 北京光启元数字科技有限公司 A kind of display methods of demographic data, device and equipment
CN110399441A (en) * 2019-07-04 2019-11-01 佳都新太科技股份有限公司 A kind of massive point data aggregate rendering method, device, equipment and storage medium
CN110647608A (en) * 2019-08-30 2020-01-03 深圳震有科技股份有限公司 Map-based mass data aggregation display method, system, device and medium
CN112214561A (en) * 2019-07-11 2021-01-12 奇安信科技集团股份有限公司 Map data processing method and device, computer equipment and storage medium
CN112347156A (en) * 2020-11-03 2021-02-09 智慧足迹数据科技有限公司 Population data rendering method and device and electronic equipment

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8223172B1 (en) * 2011-09-26 2012-07-17 Google Inc. Regional map zoom tables
CN109657017A (en) * 2018-11-05 2019-04-19 北京市天元网络技术股份有限公司 It polymerize the methods of exhibiting and device of point set in map
CN110309381A (en) * 2019-07-04 2019-10-08 北京光启元数字科技有限公司 A kind of display methods of demographic data, device and equipment
CN110399441A (en) * 2019-07-04 2019-11-01 佳都新太科技股份有限公司 A kind of massive point data aggregate rendering method, device, equipment and storage medium
CN112214561A (en) * 2019-07-11 2021-01-12 奇安信科技集团股份有限公司 Map data processing method and device, computer equipment and storage medium
CN110647608A (en) * 2019-08-30 2020-01-03 深圳震有科技股份有限公司 Map-based mass data aggregation display method, system, device and medium
CN112347156A (en) * 2020-11-03 2021-02-09 智慧足迹数据科技有限公司 Population data rendering method and device and electronic equipment

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116503539A (en) * 2023-04-19 2023-07-28 浪潮智慧科技有限公司 Thermodynamic diagram self-adaptive rendering method, device and medium based on space map

Also Published As

Publication number Publication date
CN115658779B (en) 2023-08-18

Similar Documents

Publication Publication Date Title
US11720598B2 (en) Data analysis engine
WO2018120424A1 (en) Location service-based method, device, equipment for crowd classification, and storage medium
US7392247B2 (en) Method and apparatus for fusing context data
US20100191797A1 (en) System and method of displaying search results based on density
US20100169326A1 (en) Method, apparatus and computer program product for providing analysis and visualization of content items association
CN105740333A (en) Visual advertisement management platform, and implementation method thereof
KR20040095751A (en) A system and method employing a grid index for location and precision encoding
US8341156B1 (en) System and method for identifying erroneous business listings
WO2009002952A1 (en) System and method for grouping and visualizing data
US20070005558A1 (en) Asset management system
CN111639092B (en) Personnel flow analysis method and device, electronic equipment and storage medium
US20150310085A1 (en) System for decomposing clustering events from managed infrastructures
Zhang et al. Terrafly geocloud: an online spatial data analysis and visualization system
KR20150011261A (en) Apparatus for recommanding contents using hierachical context model and method thereof
CN115658779B (en) Population data display method and device
CN113157214B (en) Remote sensing image display method, device, equipment and storage medium
CN110087185A (en) Commercial circle fence generation method, device, equipment and computer readable storage medium
US8364647B1 (en) Systems and methods for detecting trends in clustered business listings
CN112115281A (en) Data retrieval method, device and storage medium
WO2023108832A1 (en) Network space map generation method and apparatus, and device and storage medium
CN115438719A (en) Data processing method, device, server and storage medium
CN113360586A (en) Address aggregation degree query method, device and equipment and computer readable storage medium
CN103092818B (en) Thumbnail generation system and the reduced graph generating method of form
CN110019585B (en) Map data generation method, map data processing method, map data generation device, map data processing device, storage medium and computer equipment
CN111857630B (en) Map multi-screen display method, device, computer equipment and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant