Data drawing method and system, storage medium and computer program product

By analyzing the source data as an h5 data file on the backend and selecting the drawing engine according to the drawing capabilities of the front-end and backend, the problems of different data organization forms and drawing difficulty are solved, and flexible and convenient data drawing is achieved.

CN119888043APending Publication Date: 2025-04-25BEIJING ZHENGYAN SOFTWARE CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510024779.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-01-07
Publication Date
2025-04-25

AI Technical Summary

Technical Problem

The prior art is difficult to deal with the problem of difficult drawing caused by different organizational forms of source data and the degree of drawing difficulty.

Method used

The source data file is uploaded to the backend through the client, which parses it into an h5 data file, and selects the appropriate drawing engine for drawing based on the drawing capabilities of the front-end and backend.

Benefits of technology

It realizes the unified parsing of source data files in different data organization forms into h5 data files, and selecting an appropriate drawing engine according to the difficulty of drawing, thereby improving the flexibility and convenience of data drawing.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119888043A_ABST
    Figure CN119888043A_ABST
Patent Text Reader

Abstract

The invention discloses a data drawing method and system, a storage medium and a computer program product. The method comprises the steps that a client uploads a source data file to a back end through a front end; the back end analyzes the source data file from an original data organization form into an h5 data file and presents the h5 data file to the client; the client selects data needing to be drawn from the h5 data file and determines a drawing type and drawing parameters; the front end has a drawing capability and is used for drawing and presenting a rendering result to the client; the front end does not have the drawing capability, the rear end performs drawing, and a rendering result is presented to the client through the front end. By applying the scheme of the embodiment of the invention, the source data files in various different data organization forms are analyzed into the h5 data files, and the drawing engines participating in drawing are determined according to different drawing capabilities of the front end and the rear end, so that graphs with different difficulty levels can be drawn for the source data files in different data organization forms; and the flexibility and convenience of data drawing are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of Internet technology, and in particular to a data drawing method, a data drawing system, a computer-readable storage medium and a computer program product. Background Art

[0002] Data drawing is a way of expressing data visualization. Existing technologies usually use independent software to draw data locally, such as the drawing function in EXCEL. However, these data are usually required to exist in an organizational form that can be recognized by the software, and are limited to drawing graphics with the functions provided by the software, otherwise it is difficult to draw. However, in many cases, the generated data may be in a variety of different organizational forms, and the difficulty of drawing graphics varies. This situation puts higher requirements on data drawing, which is difficult to meet with existing technologies. Summary of the invention

[0003] In view of the above-mentioned prior art, an embodiment of the present invention discloses a method for data drawing, which can overcome the defects of difficulty in drawing caused by different organization forms of source data and different drawing difficulties, and achieve the purpose of unifying the data organization form and drawing separately according to the drawing difficulty.

[0004] In view of this, an embodiment of the present application proposes a method for data mapping, the method comprising:

[0005] The client uploads the source data file to the backend through the frontend;

[0006] The backend parses the source data file from the original data organization form into an h5 data file, and presents it to the client through the front end;

[0007] The client selects data to be drawn from the h5 data file and determines the drawing type and drawing parameters, and transmits the selection of the data to be drawn, the drawing type and the drawing parameters to the front end;

[0008] The front end has a drawing capability, and draws the data to be drawn according to the drawing type and the drawing parameters, and presents the rendering result to the client;

[0009] The front end does not have drawing capabilities, and the back end draws the data to be drawn according to the drawing type and the drawing parameters, and presents the rendering result to the client through the front end.

[0010] In view of the above-mentioned prior art, an embodiment of the present invention discloses a data drawing system, which can overcome the defects of difficulty in drawing caused by different organization forms of source data and different drawing difficulties, and achieve the purpose of unifying the data organization form and drawing according to the drawing difficulty.

[0011] In view of this, an embodiment of the present application provides a data mapping system, the system comprising:

[0012] The client is used to upload the source data file, select the data to be drawn from the h5 data file and determine the drawing type and drawing parameters, transmit the selection of the data to be drawn and the drawing type and drawing parameters to the front end, and present the h5 data file and the rendering result;

[0013] The front end is used to forward the source data file uploaded by the client to the back end; when the front end itself has drawing capabilities, draw the data to be drawn according to the drawing type and the drawing parameters; present the h5 data file to the client; and present the rendering result to the client;

[0014] The back end parses the source data file from the original data organization form into an h5 data file and returns it to the front end; when the front end does not have the drawing capability, the data to be drawn is drawn according to the drawing type and the drawing parameters, and the rendering result is returned to the front end.

[0015] In view of the above-mentioned prior art, an embodiment of the present invention discloses a computer-readable storage medium, which can overcome the defects of difficulty in drawing caused by different organization forms of source data and different drawing difficulties, and achieve the purpose of unifying the data organization form and drawing separately according to the drawing difficulty.

[0016] In view of this, an embodiment of the present application provides a computer-readable storage medium on which computer instructions are stored. When the instructions are executed by a processor, the steps of the above-mentioned data plotting method can be implemented.

[0017] An embodiment of the present application provides a computer program product, including computer instructions, which implement the data plotting method as described above when executed by a processor.

[0018] In summary, in view of the defects of the prior art in that the source data organization forms are different and the drawing difficulty is different, the client uploads the source data file to the back end through the front end, and the back end parses the source data file from the original data organization form into an h5 data file, and then chooses to draw by the front end or the back end according to the drawing capabilities of the front end and the back end. Since the source data files of various data organization forms are uniformly parsed into h5 data files, and then the drawing engine involved in the drawing is selectively determined according to the different drawing capabilities of the front end and the back end, the present application can realize the drawing of graphics of different difficulty levels for source data files of different data organization forms, thereby improving the flexibility and convenience of data drawing. BRIEF DESCRIPTION OF THE DRAWINGS

[0019] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.

[0020] Figure 1 It is a flow chart of the first embodiment of the method for realizing data drawing in the present application.

[0021] Figure 2 This is a flow chart of the client uploading the source data file to the back end through the front end in the second method embodiment.

[0022] Figure 3 It is a flowchart of the back end in method embodiment 3 parsing the source data file from the original data organization form into the h5 data file.

[0023] Figure 4 It is a schematic diagram of the organizational structure of the h5 data file in the embodiment of the present application.

[0024] Figure 5 This is a flow chart of a method for implementing the client selecting the data to be drawn, the drawing type and the drawing parameters and transmitting them to the front end in the fourth embodiment of the method of the present application.

[0025] Figure 6 It is a method flow chart drawn by the front end in the fifth embodiment of the method of the present application.

[0026] Figure 7 It is a flow chart of the method for synchronous drawing by the back-end application server in the sixth embodiment of the method of the present application.

[0027] Figure 8 This is a flow chart of the method for asynchronous drawing by the back-end application server in the seventh embodiment of the method of the present application.

[0028] Fig. 9This is a schematic diagram of a sample h5 data file after parsing presented in a client browser in Example 8 of the present application.

[0029] Fig.10 This is a sample schematic diagram of the eighth embodiment of the present application for selecting the data to be drawn, determining the drawing type and drawing parameters in the client browser.

[0030] Fig.11 This is a schematic diagram of the rendering result obtained by using the back-end asynchronous drawing method in Example 8 of the present application.

[0031] Fig.12 It is a structural diagram of a system embodiment 1 for implementing data mapping in the present application. DETAILED DESCRIPTION

[0032] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0033] The terms "first", "second", "third", "fourth", etc. (if any) in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein, for example. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, system, product, or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products, or devices.

[0034] The technical solution of the present invention is described in detail with specific embodiments below. The following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described in detail in some embodiments.

[0035] The prior art usually installs software with drawing functions independently in a single machine, and the user inputs data in a data organization form that the drawing software can recognize, and the drawing software usually only provides limited drawing functions. It is difficult to draw when the data volume is large, the data organization forms are different, or the graphics requirements are complex. In view of the defects of the prior art, this application deploys the parsing and drawing functions in the cloud. The client can provide data in different organizational forms, which will be uniformly parsed into h5 files by the cloud and directly drawn on the h5 files, and then the rendering results will be presented to the client.

[0036] In order to better understand the technical solution of the present application, a specific embodiment is described in detail below.

[0037] In the embodiment of the present application, the cloud is specifically divided into a front end and a back end. The front end is mainly user-oriented and interacts with the client; the back end is mainly used for analysis and drawing. Figure 1 1 is a flow chart of the method for implementing data drawing in the present application. Figure 1 As shown, the method includes:

[0038] Step 101: The client uploads the source data file to the back end through the front end.

[0039] In another embodiment, a hypertext transfer protocol (HTTP) is established between the client and the front end, and the client interacts with the front end and transmits data through a browser. An HTTP connection is also established between the front end and the back end for interaction and data transmission between the front end and the back end. Therefore, in this step, the client can upload local source data files to the back end through the above-mentioned network connection established. Of course, in practical applications, interaction and data transmission can also be transmitted in other ways, such as full-duplex communication protocol connection (WebSocket), and the network protocol here is not limited to the embodiment of the present application.

[0040] Step 102: The backend parses the source data file from the original data organization form into an h5 data file, and presents it to the client through the front end.

[0041] There are many ways to generate source data, and the source data files can be files with the following suffixes, such as: ".csv", ".docx", ".isf", ".pms", ".xlsx", ".dat", ".mea", ".mdm", ".noi", ".anf", ".s2p", ".png", ".pdf", ".txt", etc. These source data files may come from scientific research equipment such as oscilloscopes, filters, and probe resistivity tests, or they may be some source data files related to text, pictures, sounds, etc. The organization forms of these source data files are different, and it is difficult for the same drawing engine to recognize them.

[0042] h5 (hierarchical data format 5) files are a file format used to store and organize large amounts of data. They usually have a ".h5" suffix, so they are customarily called h5 files. H5 files are structured in groups, and different types of datasets are placed under groups for management. Among them, datasets are composed of metadata and data. Metadata can be used to describe information such as data space, data type, and attributes, while data refers to scientific research data, text, images, sounds, and other data itself.

[0043] In order to better identify data in different organizational forms, this application uniformly parses these source data files in different forms into h5 data files. After parsing, the data can also be presented to the client through the front end, and the user can intuitively see the parsed data through the browser.

[0044] Step 103: The client selects the data to be drawn from the h5 data file and determines the drawing type and drawing parameters, and transmits the selection of the data to be drawn, the drawing type and the drawing parameters to the front end.

[0045] Since the source data file is parsed into an h5 data file, the user can not only see the data intuitively through the browser, but also further select the data to be drawn and determine the drawing type and drawing parameters through the browser. As mentioned above, the h5 data file may include one or more different groups, and each group may also include one or more different datasets. The amount of data may be very large. In this embodiment, the data to be drawn can be flexibly selected, and all or part of the data in the h5 file can be selected for drawing.

[0046] Drawing type refers to the type of data visualization graphics, such as scatter plot, line chart, bar chart, pie chart, bubble chart, polar coordinate chart, butterfly chart, Smith chart, etc.

[0047] Drawing parameters refer to the parameters corresponding to drawing the data visualization graphics, such as determining the horizontal axis, vertical axis, drawing title, axis scale type, data analysis method, etc. If the datasets are represented in the form of a list, you can determine which column is used as the horizontal axis, which column is used as the vertical axis, as well as the title and axis scale type of the drawing. In addition, the drawing can also analyze the data, such as fitting, differentiation, decibel conversion, moving smoothing, etc. After determining the drawing type and drawing parameters, the drawing engine can clearly determine the type of the drawn graphics and the characteristics of the drawn graphics.

[0048] Step 104: The front end has drawing capabilities, and draws the data to be drawn according to the drawing type and drawing parameters, and presents the rendering results to the client.

[0049] Step 105: the front end does not have the drawing capability, and the back end draws the data to be drawn according to the drawing type and drawing parameters, and presents the rendering result to the client through the front end.

[0050] In actual applications, the capabilities of the front end and the back end are different. Steps 104 and 105 of the embodiment of the present application deploy the drawing capabilities on both the front end and the back end, that is, both the front end and the back end are deployed with drawing engines. When the amount of data to be drawn is small and the drawing type is relatively simple, and the drawing engine of the front end has the drawing capability, the front end can directly draw, achieving a fast drawing effect. When the amount of data to be drawn is large or the drawing type is complex, and the drawing engine of the front end does not have the drawing capability, the back end can draw, achieving an effect of improving the drawing capability.

[0051] By applying the embodiment of the present application, since the source data files of various data organization forms are uniformly parsed into an h5 data file, and then the drawing engine involved in the drawing is selectively determined according to the difference in front-end and back-end drawing capabilities, it is possible to draw graphics of different difficulty levels for source data files of different data organization forms, thereby improving the flexibility and convenience of data drawing.

[0052] In another embodiment, a specific implementation method is proposed in which a client uploads a source data file to a backend via a frontend, that is, a specific implementation method of step 101. Preferably, the functions of the frontend are implemented by a frontend server, and the functions of the backend are implemented by a backend server. Among them, the backend server can also be divided into a backend application server and a backend storage server. The backend application server is mainly used for business applications and computing functions, such as the graphics drawing of the present application. The backend storage server is mainly used for the storage of data and information, for example, an OSS cloud server can be used. The OSS cloud server is a cloud storage service, which is mainly used to store and manage large amounts of data. It is a highly available, highly reliable, and low-cost cloud storage service.

[0053] Figure 2 This is a flow chart of the client uploading the source data file to the back end through the front end in the second embodiment of the method. Figure 2 As shown, the method includes:

[0054] Step 201: The client selects a source data file locally and transmits the source data file to a backend storage server via a front-end server.

[0055] Step 202: The back-end storage server returns the address where the source data file is stored to the front-end server.

[0056] Step 203: The front-end server associates the file name of the source data file with the address where the source data file is stored and transmits the association to the back-end application server.

[0057] Step 204: the backend application server downloads the source data file from the backend storage server according to the file name of the source data file and the address where the source data file is stored.

[0058] In the embodiment of the present application, the source data file is usually stored in the backend storage server. In order to facilitate the backend application server to quickly process the data, the backend application server can also download the source data file from the backend storage server in advance through steps 203 and 204.

[0059] In another embodiment, a specific implementation method of the backend parsing the source data file from the original data organization form into the h5 data file is proposed, that is, the specific implementation method of step 102. Similarly, the front-end function is implemented by the front-end server, and the back-end function is implemented by the back-end server. Among them, the back-end server can also be divided into a back-end application server and a back-end storage server.

[0060] Figure 3 This is a flowchart of the back end parsing the source data file from the original data organization form into the h5 data file in the third method embodiment. Figure 3 As shown, the method includes:

[0061] Step 301: The client determines the source data file to be parsed from the front-end server.

[0062] Step 302: The front-end server sends a parsing command for the source data file to the back-end application server.

[0063] Step 303: The backend application server parses the source data file, parses the source data file from the original data organization form into an h5 data file, and distributes the parsing result to the backend storage server for storage.

[0064] Step 304: The backend application server returns the address where the h5 data file is stored on the backend storage server to the frontend server.

[0065] Step 305: The front-end server requests the h5 data file from the back-end storage server according to the address where the h5 data file is stored, and displays the data in the h5 data file to the client.

[0066] In the embodiment of the present application, if the backend application server has downloaded and saved the source data file (step 204), the backend application server can directly parse the source data file according to the parsing command (step 303). Otherwise, when the backend application server verifies that the source data file is not saved, it is necessary to first download the source data file from the backend storage server and then parse the source data file.

[0067] The embodiment of the present application can parse different data organization forms, and each source data file in each data organization form corresponds to a different parsing method.

[0068] For example, for source data files with suffixes of ".csv" and ".xlsx", each sheet name can be used as a group in the h5 data file according to the data set characteristics, and the data in each sheet can be used as a data set and loaded into the corresponding group, thereby obtaining a parsed h5 data file. For another example, for source data files with a suffix of ".isf", parsing is performed based on the wfid attribute characteristics to obtain a parsed h5 data file. For source data files with suffixes of ".pms" and ".noi", parsing is performed based on the Measured Data characteristics to obtain a parsed h5 data file. Source data files with other suffixes also use corresponding parsing methods, which are listed here one by one.

[0069] There are two ways to deploy the backend parsing engine, one is the server container mode, and the other is the serverless architecture (SeverLess) mode. Among them, the server container mode is to deploy the parsing engine independently to one or more backend application servers, and the parsing commands from the front end will be sent to one or more backend application servers in a balanced manner. The SeverLess mode means that the parsing process is run in the cloud in a script manner, and the processing results are returned to the front end in a synchronous / asynchronous manner after running. Regardless of which of the above deployment methods is used for parsing, source data files in different data organization forms can be parsed into a unified h5 data file. For the security and durability of storage, the parsing results can also be saved in the backend storage server in the manner of steps 303 and 304. When the front end needs to display the parsing results to the client, it requests the backend storage server through the address of the h5 data file, so that the user can intuitively see the parsed h5 data in the browser.

[0070] After parsing the source data file into an h5 data file, the data can be organized according to the tree-like hierarchical structure of group + dataset, which is unique to h5. Figure 4 Schematic diagram of the organizational structure of the h5 data file in the embodiment of the present application. Figure 4As shown, the h5 file includes one or more groups, and the group includes one or more data sets, and the data set includes metadata and data itself. In the embodiment of the present application, the h5 data file can present a relationship similar to that of "directory" + "file" in appearance. When the user selects a data set under a group in the browser of the client, all the data in the data set can be displayed in a list. Among them, each column belongs to the data under the same field, and the data set includes one or more columns. The data in these columns comes from scientific research equipment such as oscilloscopes, filters, probe resistivity tests, or data related to text, pictures, sounds, etc. Of course, in another embodiment, other methods can also be used to display the h5 data file, as long as the data can be provided to the user for browsing.

[0071] Preferably, in another embodiment, the client selects the data to be drawn from the h5 data file and determines the drawing type and drawing parameters, and the step of transmitting the selection of the data to be drawn and the drawing type and drawing parameters to the front end can be implemented in the following specific manner, that is, the specific implementation method of step 103.

[0072] Figure 5 This is a flow chart of a method for implementing the client to select the data to be drawn, the drawing type and the drawing parameters and transmit them to the front end in the fourth embodiment of the method of the present application. Figure 5 As shown, the method includes:

[0073] Step 501: The client selects data to be drawn from the h5 data file presented by the front-end server. The data to be drawn is selected from one or more datasets.

[0074] This step selects the data that needs to be drawn by the drawing engine later. These data can come from one dataset or multiple datasets.

[0075] If it comes from only one dataset, that is, subsequent drawing for the same dataset will only produce one corresponding drawing result.

[0076] If the data to be drawn comes from more than one dataset (i.e., multiple datasets), then: draw the data in each of the more than one datasets separately, obtain one or more corresponding drawing results, and then superimpose the more than one drawing results. For example: The client selects the data in dataset 1 and dataset 2 as the data to be drawn. The drawing engine draws the data in dataset 1 and obtains drawing result 1, which is assumed to be a polyline Figure X The drawing causes the data in data set 2 to be drawn, and the drawing result 2 is assumed to be a sine curve graph Y. Then, the broken line Figure X The result after superimposing the sine curve graph Y is the final drawing result, that is, the subsequent rendering result includes a broken line Figure X , and also includes a sine curve graph Y. In this way, the embodiment of the present application will greatly improve the effect of data drawing. It is not necessary to draw each data set separately, but to draw them in an overlay manner, and it can also provide users with a comparison between two data sets.

[0077] Step 502: The client selects one of the drawing types provided by the front-end server as the determined drawing type, where the drawing type represents the type of data visualization graphics.

[0078] As mentioned above, a Hypertext Transfer Protocol (HTTP) is established between the client and the front-end server, and the drawing types provided by the front-end server can also be presented to the user on the client through the browser. The user can select a drawing type through the browser. The drawing type can be a scatter plot, a line chart, a bar chart, a pie chart, a bubble chart, a polar coordinate chart, a butterfly chart, a Smith chart, etc. In actual applications, the drawing type can also include other types, which are not listed here one by one.

[0079] Step 503: The client determines drawing parameters, where the drawing parameters represent corresponding parameters when drawing data visualization graphics.

[0080] Similarly, the client can also determine drawing parameters through the browser, such as determining the horizontal axis, vertical axis, drawing title, axis scale type, data analysis, etc. In actual applications, drawing parameters can also include other parameters, which are not listed here one by one.

[0081] There are two ways for the client to determine the drawing parameters:

[0082] The first method is to determine the drawing parameters by inputting and / or selecting from drawing parameter options provided by the front-end server.

[0083] The second method: the client selects from the drawing parameter template provided by the front-end server to determine the drawing parameters. The drawing parameter template is the drawing parameters that are associated and bound in advance and saved in the back-end server. The front-end server obtains the drawing parameter template from the back-end server. In the second method, various drawing parameters are associated and bound as templates in advance. When the same drawing parameters are used again in the future, it is not necessary to enter or / or select them one by one in the browser as in the first method, but to directly select the template, thereby greatly reducing the time of entering and / or selecting drawing parameters and improving drawing efficiency.

[0084] Step 504: The client transmits the selection of data to be drawn, the drawing type and the drawing parameters to the front-end server.

[0085] After selecting and confirming the data to be drawn, drawing type and drawing parameters, you can submit them to the front-end server through the browser to proceed to the next step of data drawing. It should be noted that the client here transmits the selection of the data to be drawn to the front-end server, not the data to be drawn. At this time, the data to be drawn is on the front-end or back-end, and is not saved on the client.

[0086] By using the above method, the client of the embodiment of the present application can easily determine the drawing type and drawing parameters, and transmit the drawing type and drawing parameters to the front end. At this point, the front end can draw the data to be drawn according to the drawing type and drawing parameters.

[0087] In the embodiment of the present application, both the front end and the back end are deployed with drawing engines, and both have drawing capabilities. However, in actual applications, the front end is mainly used to interact with the client, and its drawing capabilities are weak, while the back end mainly provides business application and computing functions, and its drawing capabilities are strong. Therefore, if the data volume of the h5 data file is relatively small and / or the type of drawing required to be drawn is very simple, it can be drawn directly by the front end (ie: step 104). On the contrary, if the data volume of the h5 data file is relatively large and / or the type of drawing required to be drawn is relatively complex, it is necessary to draw by the back end (ie: step 105). The back end includes a back end application server and a back end storage server, and can further include a serverless architecture (SeverLess) server. SeverLess is a cloud computing model that can automatically expand or reduce the number of function instances according to the request load, without the developer manually managing the expansion and reduction of server resources, and is very flexible and convenient to use. Therefore, in the scenario where the back end application server faces insufficient resources or limited capabilities, the serverless architecture (SeverLess) server can also be called for drawing. In the embodiment of the present application, the method in which the backend application server completes the drawing locally is called "synchronous drawing method", and the method in which the backend application server calls the SeverLess server to complete the drawing is called "asynchronous drawing method".

[0088] The front-end drawing and the back-end drawing (including the synchronous drawing method and the asynchronous drawing method) are described below respectively.

[0089] Figure 6 This is a flow chart of the method drawn by the front end in the fifth embodiment of the method of this application. Figure 6 As shown, the method includes:

[0090] Step 601: The client selects data to be drawn from the h5 data file and determines the drawing type and drawing parameters, and transmits the selection of the data to be drawn, the drawing type and the drawing parameters to the front-end server.

[0091] This step is the same as step 103. Since the front-end server presents the h5 data file to the client through the browser, the user can select the data to be drawn from it through the browser. For example, the h5 data file includes data set 1, data set 2 and data set 3, a total of three data sets, and each data set is presented to the user in the form of a sheet list. Among them, data set 1 corresponds to sheet 1, data set 2 corresponds to sheet 2, and data set 3 corresponds to sheet 3. Each sheet can also be called a chart page. In the "chart page" selection provided by the browser, the user can select one or more sheets, thereby selecting the data to be drawn. If sheet 1 is selected, it means that the data in the chart page of sheet 1 will be used as the data to be drawn, and so on.

[0092] Further, this step can be performed according to the above Figure 5 The method of the fourth embodiment of the method shown is used to determine the drawing type and drawing parameters. The drawing parameters can also be determined in two ways: one is to determine the drawing parameters by inputting and / or selecting from the drawing parameter field provided by the front-end server; the other is that the client selects from the drawing parameter template provided by the front-end server to determine the drawing parameters, and the drawing parameter template is a drawing parameter that is previously associated and bound and stored in the back-end server, and the front-end server obtains the drawing parameter template from the back-end server.

[0093] In another embodiment, in this step, when the client selects the data to be drawn from the h5 data file and determines the drawing type and drawing parameters, it can further determine the data filtering conditions. The data filtering conditions described here refer to the conditions for filtering the data to be drawn. For example, the data to be drawn is the data in the chart page sheet1, and the chart page includes 3 columns and 100 rows. Then only the first 10 rows of data can be selected for drawing, and "rows <= 10" is a filtering condition. Of course, other filtering conditions can also be set according to actual conditions, which are not listed here one by one. Accordingly, when this step transmits the selection of the data to be drawn, the drawing type and the drawing parameters to the front-end server, it further includes: transmitting the data filtering conditions to the front-end application server.

[0094] In another embodiment, when the client selects the data to be drawn from the h5 data file and determines the drawing type and drawing parameters, this step further includes: setting the four arithmetic operation rules for the data to be drawn in units of field columns. Assuming that the data to be drawn includes 3 columns, each column corresponds to a field, it can be set to add the first column and the second column to obtain a new column, then "first column + second column" is the four arithmetic operation rules set in units of field columns. Of course, other four arithmetic operation rules can be set according to actual conditions, which are not listed here one by one. Correspondingly, when the client transmits the selection of the data to be drawn, the drawing type and the drawing parameters to the front end in this step, it further includes: transmitting the four arithmetic operation rules to the front-end server.

[0095] In another embodiment, when the client selects the data to be drawn from the h5 data file and determines the drawing type and drawing parameters, it further includes: determining the aggregation processing rules for the data to be drawn. Correspondingly, in this step, when the client transmits the selection of the data to be drawn and the drawing type and drawing parameters to the front end, it further includes: transmitting the aggregation processing rules to the front-end server. In practical applications, even the data in the same sheet may have different characteristics. In order to better analyze the data, the data can be aggregated according to different characteristics. In this way, different aggregation results can be drawn separately during subsequent drawing, so as to better reflect the different characteristics in the data.

[0096] Step 602: The front-end server transmits the selection of data to be drawn, the drawing type and the drawing parameters to the back-end application server.

[0097] In this step, the drawing type and drawing parameters are transmitted to the back-end application server. In actual applications, if it is determined that the drawing is to be done by the front-end, the drawing type and drawing parameters can be transmitted without transmitting the drawing type and drawing parameters, and only the selection of the data to be drawn can be transmitted. It should be noted that what is transmitted here is the selection of the data to be drawn, not the actual data to be drawn. Assuming that the user selects the chart page sheet1 on the client, then only the selection of "sheet1" indicating data set 1 needs to be transmitted, and the specific data in sheet1 does not need to be transmitted.

[0098] In another embodiment, when the front-end server transmits the selection of data to be drawn, the drawing type and the drawing parameters to the back-end application server in this step, it further includes: transmitting the data screening condition to the back-end application server.

[0099] In another embodiment, the step in which the front-end server transmits the selection of data to be drawn, the drawing type and the drawing parameters to the back-end application server further includes: transmitting the four arithmetic operation rules to the back-end application server.

[0100] In another embodiment, the step in which the front-end server transmits the selection of data to be drawn, the drawing type and the drawing parameters to the back-end application server further includes: transmitting the aggregation processing rule to the back-end application server.

[0101] Step 603: The back-end application server returns the data to be drawn to the front-end server.

[0102] The above steps 602 and 603 are for the back-end application server to return the data to be drawn to the front-end server. If the front-end server has saved the data to be drawn, it is not necessary to request the back-end application server, and steps 602 and 603 can be omitted. Of course, if the front-end server does not save the data to be drawn, or the back-end server needs to filter the data according to the data filtering conditions provided by the client before drawing, it is necessary to use the above steps 602 and 603 to request data from the back-end application server.

[0103] In another embodiment, if the backend application server also obtains data screening conditions, this step further includes: the backend application server screens the data to be drawn according to the data screening conditions. That is, the data returned to the front-end server in this step is the data after the screening process.

[0104] In another embodiment, if the back-end application server also obtains the four arithmetic operation rules, this step further includes: the back-end application server performs operations on the data to be drawn according to the four arithmetic operation rules to generate new columns and update the data to be drawn. That is, the data returned to the front-end server in this step has been processed by the four arithmetic operations.

[0105] In another embodiment, if the backend application server also obtains the aggregation processing rule, this step further includes: performing aggregation processing on the data to be drawn according to the aggregation processing rule, and updating the data to be drawn. That is, the data returned to the frontend server in this step has been aggregated.

[0106] Step 604: The front-end server draws the data to be drawn according to the drawing type and drawing parameters.

[0107] In another embodiment, if any one or more of data screening conditions, four arithmetic operation rules and aggregation processing rules are also included, then the data to be drawn in this step is data that has been screened according to the data screening conditions, and / or, has been processed according to the four arithmetic operation rules, and / or, has been aggregated according to the aggregation processing rules. Among them, for the data that has been aggregated, different aggregation results will be drawn separately at this time. For example, the data in a sheet includes 3 columns and 90 rows of data. According to the data in the 3rd column, the sheet is aggregated into three different aggregation results, namely rows 1 to 30, rows 31 to 60, and rows 61 to 90. Then, three different drawing results are obtained for the three different aggregation results. In practical applications, different colors can be set for different drawing results, so that the drawing characteristics of different aggregation results can be clearly seen.

[0108] Step 605: The front-end server presents the rendering result to the client.

[0109] At this point, the front-end server obtains the data to be drawn from the back-end application server, and then draws according to the drawing type and drawing parameters, completing the drawing by the front-end.

[0110] Figure 7 This is a flow chart of the method for synchronous drawing by the back-end application server in the sixth embodiment of the present invention. Figure 7 As shown, the method includes:

[0111] Step 701: The client selects data to be drawn from the h5 data file and determines the drawing type and drawing parameters, and transmits the selection of the data to be drawn, the drawing type and the drawing parameters to the front-end server.

[0112] This step is the same as step 601. There are two ways to determine the drawing parameters: one is to determine the drawing parameters by inputting and / or selecting from the drawing parameter field provided by the front-end server; the other is that the client selects from the drawing parameter template provided by the front-end server to determine the drawing parameters, the drawing parameter template is the drawing parameters that are previously associated and bound and stored in the back-end server, and the front-end server obtains the drawing parameter template from the back-end server.

[0113] In another embodiment, in this step, when the client selects the data to be drawn from the h5 data file and determines the drawing type and drawing parameters, the data screening condition may be further determined. Accordingly, in this step, when the selection of the data to be drawn, the drawing type and the drawing parameters are transmitted to the front-end server, the data screening condition is further transmitted to the front-end application server.

[0114] In another embodiment, when the client selects the data to be drawn from the h5 data file and determines the drawing type and drawing parameters, this step further includes: setting four arithmetic operation rules for the data to be drawn in units of field columns.

[0115] In another embodiment, when the client selects the data to be drawn from the h5 data file and determines the drawing type and drawing parameters, it further includes: determining an aggregation processing rule for the data to be drawn. Correspondingly, when the client transmits the selection of the data to be drawn and the drawing type and drawing parameters to the front end, it further includes: transmitting the aggregation processing rule to the front end server.

[0116] Step 702: The front-end server transmits the selection of data to be drawn, the drawing type and the drawing parameters to the back-end application server.

[0117] This step is the same as step 602.

[0118] In another embodiment, when the front-end server transmits the selection of data to be drawn, the drawing type and the drawing parameters to the back-end application server in this step, it further includes: transmitting the data screening condition to the back-end application server.

[0119] In another embodiment, the step in which the front-end server transmits the selection of data to be drawn, the drawing type and the drawing parameters to the back-end application server further includes: transmitting the four arithmetic operation rules to the back-end application server.

[0120] In another embodiment, the step in which the front-end server transmits the selection of data to be drawn, the drawing type and the drawing parameters to the back-end application server further includes: transmitting the aggregation processing rule to the back-end application server.

[0121] Step 703: the backend application server uses a synchronous drawing method to draw the data to be drawn according to the drawing type and drawing parameters, and obtains and saves the rendering result.

[0122] In another embodiment, if the backend application server also obtains data screening conditions, this step further includes: the backend application server screens the data to be drawn according to the data screening conditions. That is, the data to be synchronously drawn in this step is the data that has been screened.

[0123] In another embodiment, if the backend application server also obtains the four arithmetic operation rules, this step further includes: the backend application server performs operations on the data to be drawn according to the four arithmetic operation rules to generate new columns, and updates the data to be drawn.

[0124] In another embodiment, if the backend application server also obtains an aggregation processing rule, this step further includes: performing aggregation processing on the data to be drawn according to the aggregation processing rule, and updating the data to be drawn.

[0125] In another embodiment, if any one or more of data screening conditions, four arithmetic operation rules and aggregation processing rules are also included, then the data to be drawn in this step is the data that has been screened according to the data screening conditions, and / or, has been processed according to the four arithmetic operation rules, and / or, has been aggregated according to the aggregation processing rules. Among them, for the data that has been aggregated, different aggregation results will be drawn separately at this time.

[0126] Step 704: The backend application server returns the address where the rendering result is saved to the frontend server.

[0127] In the embodiment of the present application, the backend application server does not directly transmit the rendering result to the frontend server, but returns the address where the rendering result is saved to the frontend server, and then uses subsequent steps 705 and 706 to request the backend application server to download and obtain the rendering result.

[0128] Step 705: The front-end server requests the back-end application server to download the rendering result according to the address where the rendering result is saved.

[0129] Step 706: The backend application server returns the rendering result to the frontend server.

[0130] Step 707: The front-end server presents the rendering result to the client.

[0131] At this point, the backend application server obtains the data that needs to be drawn, draws according to the drawing type and drawing parameters, and completes the backend synchronous drawing method.

[0132] Figure 8 This is a flowchart of the method for asynchronous drawing by the back-end application server in the seventh embodiment of the present invention. Figure 8 As shown, the method includes:

[0133] Step 801: The client selects data to be drawn from the h5 data file and determines the drawing type and drawing parameters, and transmits the selection of the data to be drawn, the drawing type and the drawing parameters to the front-end server.

[0134] This step is the same as step 601. There are two ways to determine the drawing parameters: one is to determine the drawing parameters by inputting and / or selecting from the drawing parameter field provided by the front-end server; the other is that the client selects from the drawing parameter template provided by the front-end server to determine the drawing parameters, the drawing parameter template is the drawing parameters that are previously associated and bound and stored in the back-end server, and the front-end server obtains the drawing parameter template from the back-end server.

[0135] In another embodiment, in this step, when the client selects the data to be drawn from the h5 data file and determines the drawing type and drawing parameters, the data screening condition may be further determined. Accordingly, in this step, when the selection of the data to be drawn, the drawing type and the drawing parameters are transmitted to the front-end server, the data screening condition is further transmitted to the front-end application server.

[0136] In another embodiment, when the client selects the data to be drawn from the h5 data file and determines the drawing type and drawing parameters, this step further includes: setting the four arithmetic operation rules for the data to be drawn in units of field columns. Correspondingly, when the client transmits the selection of the data to be drawn, the drawing type and the drawing parameters to the front end, this step further includes: transmitting the four arithmetic operation rules to the front end server.

[0137] In another embodiment, when the client selects the data to be drawn from the h5 data file and determines the drawing type and drawing parameters, it further includes: determining an aggregation processing rule for the data to be drawn. Correspondingly, when the client transmits the selection of the data to be drawn and the drawing type and drawing parameters to the front end, it further includes: transmitting the aggregation processing rule to the front end server.

[0138] Step 802: The front-end server transmits the selection of data to be drawn, the drawing type and the drawing parameters to the back-end application server.

[0139] This step is the same as step 602.

[0140] In another embodiment, when the front-end server transmits the selection of data to be drawn, the drawing type and the drawing parameters to the back-end application server in this step, it further includes: transmitting the data screening condition to the back-end application server.

[0141] In another embodiment, the step in which the front-end server transmits the selection of data to be drawn, the drawing type and the drawing parameters to the back-end application server further includes: transmitting the four arithmetic operation rules to the back-end application server.

[0142] In another embodiment, the step in which the front-end server transmits the selection of data to be drawn, the drawing type and the drawing parameters to the back-end application server further includes: transmitting the aggregation processing rule to the back-end application server.

[0143] Step 803: the backend application server transmits the data to be drawn, the drawing type and the drawing parameters to the serverless architecture server in an asynchronous drawing manner.

[0144] In another embodiment, if the back-end application server also obtains data screening conditions, this step further includes: the back-end application server performs screening processing on the data to be drawn according to the data screening conditions.

[0145] In another embodiment, if the backend application server also obtains the four arithmetic operation rules, this step further includes: the backend application server performs operations on the data to be drawn according to the four arithmetic operation rules to generate new columns, and updates the data to be drawn.

[0146] In another embodiment, if the backend application server also obtains an aggregation processing rule, this step further includes: performing aggregation processing on the data to be drawn according to the aggregation processing rule, and updating the data to be drawn.

[0147] Step 804: The serverless architecture server draws the data to be drawn according to the drawing type and drawing parameters to obtain a rendering result.

[0148] In another embodiment, if it also includes any one or more of data filtering conditions, four arithmetic operation rules and aggregation processing rules, then the data that needs to be drawn in this step is data that has been filtered according to the data filtering conditions, and / or, processed according to the four arithmetic operation rules, and / or, aggregated according to the aggregation processing rules.

[0149] Step 805: The serverless architecture server returns the rendering result to the backend application server.

[0150] The above steps 803 to 805 are actually the backend application server calling the SeverLess server, and the SeverLess server completes the drawing and returns the rendering result.

[0151] Step 806: The backend application server returns the address where the rendering result is saved to the frontend server.

[0152] In the embodiment of the present application, the backend application server does not directly transmit the rendering result to the frontend server, but returns the address where the rendering result is saved to the frontend server, and then uses subsequent steps 807 and 808 to request the backend application server to download and obtain the rendering result.

[0153] Step 807: The front-end server requests the back-end application server to download the rendering result according to the address where the rendering result is saved.

[0154] Step 808: The backend application server returns the rendering result to the frontend server.

[0155] Step 809: The front-end server presents the rendering result to the client.

[0156] At this point, the backend application server obtains the data, drawing type and drawing parameters that need to be drawn, calls the SeverLess server for drawing, and completes the backend asynchronous drawing method.

[0157] In another embodiment eight, it is assumed that the operating system is applied to scientific research office, and the system is a software as a service business (SaaS). The client is the terminal where the scientific researcher is located, which is deployed in the cloud. The front-end server, the back-end application server, and the back-end storage server are all deployed on the cloud. A hypertext transfer protocol (HTTP) is established between the client and the front-end server, and the client interacts with the front-end server and transmits data through a browser. An HTTP connection is also established between the front-end server and the back-end storage server for interaction and data transmission between the front-end and the back-end. The back-end storage server is specifically implemented using an OSS (Object Storage Service) cloud server. The OSS cloud server is a cloud storage service that is mainly used to store and manage large amounts of data. It is a highly available, highly reliable, and low-cost cloud storage service. The back end also includes a SeverLess server for participating in drawing work when the back-end application server's drawing capabilities are insufficient.

[0158] 1) The embodiment of the present application uses the method of steps 201 to 204 to upload the local source data files of the client. That is, when researchers obtain scientific research data through different scientific research equipment locally or need to upload scientific research related materials, the method of steps 201 to 204 can be used to achieve it.

[0159] 2) When researchers wish to browse the uploaded data in the browser of the local client, the embodiment of the present application utilizes steps 301 to 305 to parse the previously uploaded source data files into h5 data files and present them to the researchers.

[0160] Assume that the source data file is generated by a scientific research device, and its content is:

[0161] / / Platform Design Automation

[0162] / / Sweep Data

[0163] {group=Id_Vg,y=(Id),x=Vgs,p=Vbs(0.000,-0.6250,-1.250,-1.875,-2.500), condition=(vds =0.0500000, ref_vs=0.00000), device=(type=Mosfet, polarity=NMOS, t=25.0, w=0.9, l=0.36)}

[0164] -0.200000 5.00034e-16 6.74997e-15 1.30000e-14 1.92500e-14 2.55000e-14

[0165] -0.150000 5.00034e-16 6.74997e-15 1.30000e-14 1.92500e-14 2.55000e-14

[0166] -0.100000 5.00034e-16 6.74997e-15 1.30000e-14 1.92500e-14 2.55000e-14

[0167] -0.0500000 5.00034e-16 6.74997e-15 1.30000e-14 1.92500e-14 2.55000e-14

[0168] 0.00000 5.00034e-16 6.74997e-15 1.30000e-14 1.92500e-14 2.55000e-14

[0169] ……

[0170] {group=Id_Vg,y=(Id),x=Vgs,p=Vbs(0.000,-0.6250,-1.250,-1.875,-2.500),condition=(vds=3.30000,ref_vs=0.00000),device=(type=Mosfet,polarity=NMOS,t=25.0,w=0.9,l=0.36)}

[0171] -0.200000 3.30014e-14 3.92499e-14 4.55018e-14 5.17503e-14 5.80057e-14

[0172] -0.150000 3.30014e-14 3.92499e-14 4.55018e-14 5.17503e-14 5.80057e-14

[0173] -0.100000 3.30014e-14 3.92499e-14 4.55018e-14 5.17503e-14 5.80057e-14

[0174] -0.0500000 3.30014e-14 3.92499e-14 4.55018e-14 5.17503e-14 5.80057e-14

[0175] 0.00000 3.30014e-14 3.92499e-14 4.55018e-14 5.17503e-14 5.80057e-14

[0176] ……

[0177] {group=id_vd,y=(Id),x=Vds,p=Vgs(0.9000,1.400,1.800,2.500,3.300),condition=(vbs=0.00000,ref_vs=0.00000),device=(type=Mosfet,polarity=NMOS,t=25.0,w=0.9,l=0.36)}

[0178] 0.00000 -8.40981e-24 -2.05557e-16 -2.28918e-15 -3.54524e-14

[0179] -6.48403e-13

[0180] 0.0500000 7.63045e-15 8.51681e-08 8.64489e-06 2.17358e-05 3.09758e-05

[0181] ……

[0182] {group=id_vd,y=(Id),x=Vds,p=Vgs(0.9000,1.400,1.800,2.500,3.300),condition=(vbs=-2.50000,ref_vs=0.00000),device=(type=Mosfet,polarity=NMOS,t=25.0,w=0.9,l=0.36)}

[0183] 0.00000 2.50000e-14 2.45357e-14 2.21077e-14 -1.44202e-14 -7.10643e-13

[0184] 0.0500000 2.55000e-14 5.07267e-14 2.60619e-08 1.14766e-05 2.16722e-05

[0185] …

[0186] After parsing into h5 data file, the data is represented in a table as follows:

[0187] Vg Id Vbs -0.2 5.00034E-16 0 -0.15 5.00034E-16 0 -0.1 5.00034E-16 0 -0.05 5.00034E-16 0 0 5.00034E-16 0 0.05 5.00034E-16 0 0.1 5.00034E-16 0 0.15 5.00034E-16 0 0.2 5.00034E-16 0 0.25 5.00034E-16 0 0.3 5.00034E-16 0 0.35 5.00034E-16 0 0.4 5.00034E-16 0 … … …

[0188] Table 1

[0189] Assumptions Fig. 9 : is a schematic diagram of a sample of the parsed h5 data file presented in the client browser in the eighth embodiment of the present application. Fig. 9 As shown in the figure, the tree hierarchy of the h5 data file can be intuitively seen in the browser, including two groups, group1 and group2. Group1 has two chart pages, sheet1 and sheet2, and group2 has one chart page, sheet3. After clicking a sheet page, all the data under the sheet page can be displayed in the browser.

[0190] 3) Researchers want to select the data to be drawn in the client browser, determine the drawing type and drawing parameters, and transmit them to the front end, which can be achieved using the method of steps 501 to 504. Assume Fig.10 This is a sample schematic diagram of selecting the data to be drawn, determining the drawing type and drawing parameters in the client browser in the eighth embodiment of the present application. Fig.10 As shown, the browser can intuitively see that it provides options for selecting the data to be drawn, determining the drawing type, and determining the drawing parameters. Among them, the options for the data to be drawn can be determined by selecting one or more sheet pages in the h5 file. Similarly, assigning values ​​to the drawing type options can determine the drawing type, and assigning values ​​to the drawing parameter options can determine the drawing parameters. Drawing types can include scatter plots, line charts, bar charts, pie charts, bubble charts, polar coordinate charts, butterfly charts, Smith charts, etc. Drawing parameters include horizontal axis, vertical axis, drawing title, axis scale type, data analysis, etc.

[0191] At this time, you can also determine the data screening conditions, four arithmetic operations rules, and aggregation processing rules, or use the data screening conditions, four arithmetic operations rules, and aggregation processing rules as drawing parameters. Fig.10 As shown, the browser can also intuitively see options for providing data screening conditions, four arithmetic operation rules, and aggregation processing rules to determine the data screening conditions, four arithmetic operation rules, and aggregation processing rules respectively.

[0192] The above drawing parameters can be determined manually one by one by researchers in the browser of the client, that is, the first way to determine the drawing parameters: determine the drawing parameters by inputting and / or selecting from the drawing parameter options provided by the front-end server. Researchers can also directly select templates in the browser of the client to determine in batches, that is, the second way to determine the drawing parameters: the client selects from the drawing parameter template provided by the front-end server to determine the drawing parameters. The drawing parameter template is the drawing parameter that is previously associated and bound and saved in the back-end server. The front-end server obtains the drawing parameter template from the back-end server. In the second way, researchers do not need to determine the drawing parameters one by one, but can determine them with one click, which is more convenient and efficient.

[0193] At this point, the selection of data to be drawn, drawing type, drawing parameters, data screening conditions, four arithmetic operations rules, and aggregation processing rules have been determined in the browser and can be transmitted to the front-end server at the same time.

[0194] 4) The front-end server, back-end application server and SeverLess server will determine who is responsible for the drawing work according to the amount of data to be drawn and the difficulty of drawing. If the amount of data in the h5 data file is relatively small and / or the type of drawing to be drawn is very simple, it can be drawn directly by the front end, specifically referring to the above steps 601 to 605. If the amount of data in the h5 data file is relatively large and / or the type of drawing to be drawn is relatively complex, it needs to be drawn by the back-end application server, specifically referring to the above steps 701 to 707, that is, the back-end synchronous drawing method. If the amount of data in the h5 data file is very large and / or the type of drawing to be drawn is very complex, the back-end application server can call the SeverLess server for drawing, specifically referring to the above steps 801 to 809, that is, the back-end asynchronous drawing method.

[0195] In an embodiment of the present application, a drawing method option can also be provided in the client browser to determine which method is used for drawing in the front-end server, the back-end application server, or the SeverLess server. Assume that sheet1 is selected as the data to be drawn in the embodiment of the present application, the drawing type is selected as the Smith chart, and the SeverLess server is selected for drawing. Of course, in practical applications, other options need to be selected, which will not be repeated here. Since it is a back-end asynchronous drawing method, researchers do not need to pay attention to and wait for the drawing results all the time. They can do other work and browse the rendering results after the SeverLess server is finished drawing, thereby improving work efficiency. Fig.11 This is a schematic diagram of the rendering result obtained by using the back-end asynchronous drawing method in Example 8 of the present application.

[0196] By applying the embodiment of the present application, after uploading the source data file, researchers can easily obtain the final data drawing result regardless of the data organization form of the source data file, the size of the data volume, and the difficulty of drawing. In addition, if the operation is performed on a SaaS-based operating platform, the data drawing results can be easily shared with other researchers, greatly improving the portability of the work.

[0197] In view of the above data mapping method, the present application also proposes a data mapping system. Fig.12 Schematic diagram of the structure of the system embodiment 1 for realizing data mapping in the present application. Fig.12 As shown, the system includes: a client 1201, a front end 1202, and a back end 1203. Among them:

[0198] The client 1201 is used to upload the source data file, select the data to be drawn from the h5 data file and determine the drawing type and drawing parameters, transmit the selection of the data to be drawn and the drawing type and drawing parameters to the front end 1202, and present the h5 data file and the rendering result.

[0199] The front end 1202 is used to forward the source data file uploaded by the client 1201 to the back end 1203; when the front end 1202 itself has the drawing capability, it draws the data to be drawn according to the drawing type and drawing parameters; presents the h5 data file to the client 1201; and presents the rendering result to the client 1201.

[0200] The back end 1203 parses the source data file from the original data organization form into an h5 data file and returns it to the front end 1202 ; when the front end 1202 does not have the drawing capability, it draws the data to be drawn according to the drawing type and drawing parameters, and returns the rendering result to the front end 1202 .

[0201] That is to say, the client 1201 uploads the source data file to the back end 1203 through the front end 1202; the back end 1203 parses the source data file from the original data organization form into an h5 data file, and presents the h5 data file to the client 1201; the client 1201 selects the data to be drawn from the h5 data file and determines the drawing type and drawing parameters, and transmits the selection of the data to be drawn and the drawing type and drawing parameters to the front end 1202; when the front end 1202 itself has the drawing capability, it draws the data to be drawn according to the drawing type and drawing parameters, and presents the rendering result to the client 1201; when the front end 1202 does not have the drawing capability, it draws the data to be drawn according to the drawing type and drawing parameters, returns the rendering result to the front end 1202, and presents the rendering result to the client 1201.

[0202] By applying the embodiment of the present application, since the source data files of various data organization forms are uniformly parsed into an h5 data file, and then the drawing engine involved in the drawing is selectively determined according to the difference in front-end and back-end drawing capabilities, it is possible to draw graphics of different difficulty levels for source data files of different data organization forms, thereby improving the flexibility and convenience of data drawing.

[0203] The embodiment of the present application also provides a computer-readable medium, the computer-readable storage medium stores instructions, and the instructions can execute the steps in the data drawing method described above when executed by a processor. In practical applications, the computer-readable medium can be included in the device / apparatus / system described in the above embodiment, or it can exist alone without being assembled into the device / apparatus / system. The above computer-readable storage medium carries one or more programs, and when the above one or more programs are executed, the data drawing method described in the above embodiments can be implemented. According to the embodiment disclosed in the present application, the computer-readable storage medium can be a non-volatile computer-readable storage medium, for example, it can include but is not limited to: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above, but it is not used to limit the scope of protection of the present application. In the embodiment disclosed in the present application, the computer-readable storage medium can be any tangible medium containing or storing a program, which can be used by or in combination with an instruction execution system, an apparatus or a device.

[0204] An embodiment of the present application further provides a computer program product, which includes computer instructions. When the computer instructions are executed by a processor, the method described in any of the above embodiments is implemented.

[0205] The flow chart and block diagram in the accompanying drawings of the present application show the possible architecture, function and operation of the system, method and computer program product according to the various embodiments disclosed in the present application. In this regard, each box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the above-mentioned module, program segment or a part of a code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some implementations as replacements, the functions marked in the box can also occur in the order of the standards in different figures. For example, the boxes represented by two connections can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flow chart, and the combination of the boxes in the block diagram or flow chart can be implemented with a dedicated hardware-based system that performs the specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0206] Those skilled in the art will appreciate that the features described in the various embodiments and / or claims of the present disclosure may be combined and / or combined in a variety of ways, even if such combinations or combinations are not explicitly described in the present application. In particular, without departing from the spirit and teachings of the present application, the features described in the various embodiments and / or claims of the present application may be combined and / or combined in a variety of ways, and all of these combinations and / or combinations fall within the scope disclosed in the present application.

[0207] Specific embodiments are used herein to illustrate the principles and implementation methods of the present invention. The description of the above embodiments is only used to help understand the method of the present invention and its core ideas, and is not used to limit the present application. For those skilled in the art, changes can be made in the specific implementation methods and application scopes according to the ideas, spirits and principles of the present invention, and any modifications, equivalent substitutions, improvements, etc. made therein should be included in the scope of protection of this application.

Claims

1. A method for data plotting, characterized in that: The method includes: The client uploads the source data file to the backend through the frontend; The backend parses the source data file from the original data organization form into an h5 data file, and presents it to the client through the front end; The client selects data to be drawn from the h5 data file and determines the drawing type and drawing parameters, and transmits the selection of the data to be drawn, the drawing type and the drawing parameters to the front end; The front end has a drawing capability, and draws the data to be drawn according to the drawing type and the drawing parameters, and presents the rendering result to the client; The front end does not have drawing capabilities, and the back end draws the data to be drawn according to the drawing type and the drawing parameters, and presents the rendering result to the client through the front end.

2. The method according to claim 1, characterized in that The step of the client uploading the source data file to the back end through the front end includes: The client selects the source data file locally, and transmits the source data file to the back-end storage server through the front-end server, wherein the front-end includes the front-end server, and the back-end includes the back-end storage server; The back-end storage server returns the address where the source data file is stored to the front-end server; The front-end server associates the file name of the source data file with the address where the source data file is stored and transmits the association to the back-end application server, wherein the back-end also includes the back-end application server; The backend application server downloads the source data file from the backend storage server according to the file name of the source data file and the address where the source data file is stored.

3. The method according to claim 1, characterized in that The steps of the backend parsing the source data file from the original data organization form into an h5 data file and presenting it to the client by the front end include: The client determines the source data file to be parsed from the front-end server; The front-end server sends a parsing command for the source data file to the back-end application server; The backend application server parses the source data file, parses the source data file from the original data organization form into an h5 data file, and distributes the parsing result to the backend storage server for storage; The back-end application server returns the address of the h5 data file stored by the back-end storage server to the front-end server; The front-end server requests the h5 data file from the back-end storage server according to the address where the h5 data file is stored, and displays the data in the h5 data file to the client.

4. The method according to claim 1, characterized in that: The client selects data to be drawn from the h5 data file and determines the drawing type and drawing parameters, and transmits the selection of the data to be drawn and the drawing type and the drawing parameters to the front end, including: The client selects data to be drawn from the h5 data file presented by the front-end server, wherein the data to be drawn is selected from one or more data sets, wherein the h5 data file includes one or more groups, wherein the groups include one or more data sets, and wherein the data sets include metadata and data itself; The client selects one from the drawing types provided by the front-end server as the determined drawing type, wherein the drawing type represents a type of data visualization graphics; The client determines the drawing parameters, where the drawing parameters represent corresponding parameters when drawing the data visualization graph; The client transmits the selection of the data to be drawn, the drawing type and the drawing parameters to the front-end server.

5. The method according to claim 4, characterized in that The step of determining the drawing parameters by the client comprises: The client determines the drawing parameters by inputting and / or selecting from drawing parameter options provided by the front-end server.

6. The method according to claim 4, characterized in that The step of determining the drawing parameters by the client comprises: The client selects from a drawing parameter template provided by a front-end server to determine the drawing parameter, wherein the drawing parameter template is a drawing parameter that is previously associated and bound with the selected drawing parameters and stored in the back-end server, and the front-end server obtains the drawing parameter template from the back-end server.

7. The method according to claim 4, characterized in that The data to be drawn are selected from the one or more data sets; The step of drawing the data to be drawn comprises: The data in each of the more than one data sets are plotted respectively to obtain more than one corresponding plotting results, and then the more than one plotting results are superimposed.

8. The method according to claim 1, characterized in that The step of drawing the data to be drawn according to the drawing type and the drawing parameters by the front end and presenting the rendering result to the client comprises: The front-end server transmits the selection of the data to be drawn, the drawing type and the drawing parameters to the back-end application server; The back-end application server returns the data to be drawn to the front-end server; The front-end server draws the data to be drawn according to the drawing type and the drawing parameters, and presents the rendering result to the client.

9. The method according to claim 1, characterized in that: The step of drawing the data to be drawn according to the drawing type and the drawing parameters by the back end and presenting the rendering result to the client through the front end includes: The front-end server transmits the selection of the data to be drawn, the drawing type and the drawing parameters to the back-end application server; The back-end application server uses a synchronous drawing method to draw the data to be drawn according to the drawing type and the drawing parameters, and returns the address storing the rendering result to the front-end server; The front-end server requests the back-end application server to download the rendering result according to the address where the rendering result is saved, and the back-end application server returns the rendering result to the front-end server; The front-end server presents the rendering result to the client.

10. The method according to claim 1, characterized in that The step of drawing the data to be drawn according to the drawing type and the drawing parameters by the back end and presenting the rendering result to the client through the front end includes: The front-end server transmits the selection of the data to be drawn, the drawing type and the drawing parameters to the back-end application server; The backend application server adopts an asynchronous drawing method to transmit the data to be drawn, the drawing type and the drawing parameters to the serverless architecture server, and the backend includes the serverless architecture server; The serverless architecture server draws the data to be drawn according to the drawing type and the drawing parameters, and returns the rendering result to the backend application server; The back-end application server returns the address storing the rendering result to the front-end server; The front-end server requests the back-end application server to download the rendering result according to the address where the rendering result is saved, and the back-end application server returns the rendering result to the front-end server; The front-end server presents the rendering result to the client.

11. The method according to any one of claims 8 to 10, characterized in that: When the client selects the data to be drawn from the h5 data file and determines the drawing type and drawing parameters, it further includes: determining data screening conditions; The step of transmitting the selection of the data to be drawn, the drawing type and the drawing parameters to the front end further comprises: transmitting the data screening condition to the front end server; The step of the front-end server transmitting the selection of the data to be drawn, the drawing type and the drawing parameters to the back-end application server further includes: transmitting the data screening conditions to the back-end application server; and further includes: the back-end application server screening the data to be drawn according to the data screening conditions.

12. The method according to any one of claims 8 to 10, characterized in that: When the client selects the data to be drawn from the h5 data file and determines the drawing type and drawing parameters, it further includes: setting four arithmetic operation rules for the data to be drawn in units of field columns; The step of transmitting the selection of the data to be drawn, the drawing type and the drawing parameters to the front end further comprises: transmitting the four arithmetic operation rules to the front end server; The step in which the front-end server transmits the selection of the data to be drawn, the drawing type and the drawing parameters to the back-end application server further includes: transmitting the four arithmetic operations rules to the back-end application server; and further includes: the back-end application server operates the data to be drawn according to the four arithmetic operations rules to generate new columns, and updates the data to be drawn.

13. The method according to any one of claims 8 to 10, characterized in that: When the client selects the data to be drawn from the h5 data file and determines the drawing type and drawing parameters, it further includes: determining an aggregation processing rule for the data to be drawn; The step of transmitting the selection of the data to be drawn, the drawing type and the drawing parameters to the front end further comprises: transmitting the aggregation processing rule to the front end server; The step in which the front-end server transmits the selection of the data to be drawn, the drawing type and the drawing parameters to the back-end application server further includes: transmitting the aggregation processing rules to the back-end application server; and the step in which the data to be drawn is drawn further includes: performing aggregation processing on the data to be drawn according to the aggregation processing rules, and updating the data to be drawn.

14. A data plotting system, characterized in that: The system includes: The client is used to upload the source data file, select the data to be drawn from the h5 data file and determine the drawing type and drawing parameters, transmit the selection of the data to be drawn and the drawing type and drawing parameters to the front end, and present the h5 data file and the rendering result; The front end is used to forward the source data file uploaded by the client to the back end; when the front end itself has drawing capabilities, draw the data to be drawn according to the drawing type and the drawing parameters; present the h5 data file to the client; and present the rendering result to the client; The back end parses the source data file from the original data organization form into an h5 data file and returns it to the front end; when the front end does not have the drawing capability, the data to be drawn is drawn according to the drawing type and the drawing parameters, and the rendering result is returned to the front end.

15. A computer-readable storage medium having computer instructions stored thereon, characterized in that: When the instructions are executed by a processor, the steps of the data plotting method according to any one of claims 1 to 12 can be implemented.

16. A computer program product, comprising computer instructions, wherein when the computer instructions are executed by a processor, the method for plotting data according to any one of claims 1 to 12 is implemented.