A density relation graph-based RNA-disease association relationship visual analysis method

CN117275748BActive Publication Date: 2026-08-28SICHUAN UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202311187212.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-09-14
Publication Date
2026-08-28
Estimated Expiration
2043-09-14

AI Technical Summary

Technical Problem

但是,生物研究中的RNA-疾病关联关系网络具有普遍的生物学语义特性,且网络规模较大,使用常见的节点链接图等可视化形式会造成显著的视觉混淆和渲染性能瓶颈,难以直接用于RNA-疾病关联关系网络可视化

Benefits of technology

[0059]1)本发明弥补了现有生物研究中,对RNA-疾病关联关系网络可视化效果不佳的问题。现有的RNA-疾病关联关系网络可视化使用同质节点链接图,对异构节点信息展示能力不佳;同时现有可视化方法仅能呈现RNA-疾病关联关系网络中的基本关联关系,无法深入对比节点属性差异和分析指定节点之间的通路情况。本方法通过颜色映射和字形设计,区分了不同属性的异构节点,并引入新颖的交互设计,允许用户交互式选择初始节点和终点节点,以分析和对比节点之间的多跳通路,以支持更复杂的分析任务;

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117275748B_ABST
    Figure CN117275748B_ABST
Patent Text Reader

Abstract

The application discloses an RNA-disease correlation relationship visual analysis method based on a density relationship graph, first acquires internal and external databases, and establishes a corresponding relationship between a prediction result and an internal RNA-disease correlation relationship database; a graph data structure is established, the acceleration and speed of a node at a current time are simulated through discrete force, the position of the node at a next time is calculated, the weighted density of the node on a two-dimensional plane is estimated, and the density contour lines of each density level are calculated; each heterogeneous node and different markers are drawn to distinguish the biological semantic features of the nodes, and the correlation relationship between the nodes is drawn based on edge coordinate layout; a Voronoi polygon graph on the two-dimensional plane and a corresponding quadtree spatial index are calculated to determine the interactive object when a mouse is moved. The application can not only help biological researchers to efficiently check and explore the existing RNA-disease correlation relationship, but also support a user in verifying and analyzing the prediction result of a deep learning model.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of information visualization and visual analysis technology, specifically to a method for visual analysis of RNA-disease associations based on density relationship graphs. Background Technology

[0002] In recent years, with the development of deep learning technology and biological experimental research, our understanding of the interactions and relationships between RNA (ribonucleic acid) fragments and diseases has deepened, leading to the establishment of complex RNA-disease association networks. Leveraging deep learning technology, biological researchers can predict previously unknown associations between RNA fragments and diseases based on existing research data. However, due to the vast scale and diverse nature of RNA-disease association networks, existing analytical methods cannot support efficient exploration of these networks by biological researchers. Furthermore, biological researchers cannot efficiently examine and analyze the RNA-disease associations predicted by deep learning models, making it difficult to build trust in these models.

[0003] Visualization and visual analytics combine research from computer graphics, cognitive theory, and data mining methods to help users quickly extract useful information from large-scale data. Through graph visualization techniques, analysts can intuitively observe characteristics such as community and clustering in complex networks and quickly discover special structures within them. However, RNA-disease association networks in biological research possess universal biological semantic characteristics and are large in scale. Using common visualization methods such as node-linked graphs can cause significant visual confusion and rendering performance bottlenecks, making them difficult to directly apply to the visualization of RNA-disease association networks. Summary of the Invention

[0004] The purpose of this invention is to provide a visual analysis method for RNA-disease associations using density graphs that combine density maps and node link graphs. This method integrates biological semantics into visual markers, reduces visual confusion in large-scale RNA-disease association networks, and improves rendering performance. This invention not only helps biological researchers efficiently examine and explore existing RNA-disease associations but also supports users in validating and analyzing the prediction results of deep learning models, enhancing user trust in these models and thus assisting in the design of biological experiments. The specific technical solution is as follows:

[0005] A method for visual analysis of RNA-disease associations based on density relationship diagrams includes the following steps:

[0006] S1: Data Acquisition and Processing

[0007] The system uses a user-provided RNA-disease association database as an internal database and an external biological experiment database as an external database. For the internal database, it retrieves matching RNA and disease information data from the external database, establishes links and indexes, and establishes correspondences between the user-provided deep learning model prediction results and the internal database to form a unified data representation.

[0008] S2: Node Layout Calculation and Outline Drawing

[0009] The unified data representation obtained from S1 is parsed to form a graph data structure. Based on the weighted force-guided layout algorithm, the acceleration and velocity of the nodes at the current moment are simulated by discrete forces to calculate the position of the nodes at the next moment. At each moment, the weighted density of the nodes on the two-dimensional plane is estimated based on the kernel density estimation algorithm, and the density contour lines of each density level are calculated using the moving grid algorithm and drawn on the drawing interface. This process is repeated iteratively until the specified number of iterations is reached, at which point the algorithm is considered to have converged and the layout calculation is completed.

[0010] S3: Node Link Graph Rendering

[0011] Based on the converged node coordinate layout in S2, draw each heterogeneous node; distinguish the biological semantic features of nodes by drawing different labels for nodes with different biological semantics; draw the association relationships between nodes based on the edge coordinate layout; use color and line type to represent different association semantics, and use transparency to represent quantitative indicators in special association relationships.

[0012] S4: Interaction Design

[0013] Based on the converged node coordinate layout in S2, the Delaunay algorithm is used to calculate the Thiessen polygon graph on the two-dimensional plane and the corresponding quadtree spatial index. Based on the Thiessen polygon and the quadtree index, the interactive object when the mouse moves is determined. At the same time, interactive operations are defined to support interactive exploration of RNA-disease association and interactive verification of deep learning model prediction results.

[0014] Furthermore, in step S1, the specific steps for data acquisition and processing are as follows:

[0015] S11: For the three data sources: internal database, external database, and prediction results, two data types are defined: nodes and associations. The internal database stores nodes and associations, including three types of nodes at the node level: lncRNA, miRNA, and disease. Associations include two types: association and similarity. The external database stores known RNA-disease associations and descriptions of the data attributes of each node. The prediction results store the prediction results of the deep learning model on the associations between nodes existing in the internal database, including association and similarity.

[0016] S12: Data source integration: Using unique identifiers to link the data stored in internal databases, external databases, and prediction results to form a unified representation;

[0017] S13: Pre-computation: After forming a unified data representation, some parameters in the graph structure are pre-computed to improve computational efficiency during real-time rendering. Specifically, for the graph as a whole, the number of graph nodes N is pre-computed. nodes Number of associations N in the graph links Simultaneously, for each node, the degree D of the node is pre-calculated. node .

[0018] Pre-calculation of some parameters in the graph structure here refers to offline pre-calculation using a unified data representation. The establishment of the graph structure mentioned below refers to the data structure that is established in memory in real time during the drawing process.

[0019] Furthermore, in step S2, the specific steps for node layout calculation and contour line drawing are as follows:

[0020] S21: Establish graph structure: Based on the unified representation in step S12, create a graph data structure in memory. The graph data structure adopts an extended adjacency matrix representation. Specifically, in each cell of the adjacency matrix, a pointer is stored instead of a specific value, thereby supporting the storage of complex edge data in the adjacency matrix data structure.

[0021] S22: Force-guided layout iteration and kernel density estimation: Based on the graph data structure, the positions of nodes and edges are updated iteratively, and at the end of each iteration, the weighted density of the current node is calculated and the kernel density estimation result is updated;

[0022] S23: Calculate the density hierarchy contour line based on the moving grid algorithm: First, divide the two-dimensional plane into several squares. Each square is a square with a side length of 4 units, consisting of 4 vertices. Each vertex has a scalar value. For each square, compare the scalar values ​​of its 4 vertices with the given contour line values ​​to determine whether the square intersects with the contour line. If they intersect, determine the configuration of the contour line inside the square by looking up a table based on the relationship between the 4 vertices and the contour line values. For intersecting squares, calculate the position where the contour line intersects the edge using linear interpolation based on the scalar values ​​of the vertices on its adjacent edges. Finally, connect the line segments generated by all the squares to obtain the complete contour line outline.

[0023] Contour profiles were calculated for three different node types to visually distinguish heterogeneous node types.

[0024] S24: Density contour plotting: Draw the contour lines on the visualization canvas, set the fill color mapping scheme and node marker type mapping scheme, set different colors for the three node types lncRNA, miRNA and disease; and set corresponding transparency values ​​for different density levels to encode node density;

[0025] S25: Check if the iteration limit has been reached. If the iteration limit has been reached, proceed to S3; otherwise, return to S22.

[0026] Furthermore, in step S22, the weighted density of the current node is calculated as follows:

[0027] S221: Define the coordinate system

[0028] Define the center of the canvas as the origin of the coordinate system, i.e., coordinates (0,0). Set the width and height of the canvas to W and H respectively. Define the top left corner of the canvas as... The bottom right corner is defined as

[0029] S222: Initialize coordinates

[0030] For each node, the x-coordinate is... node exist Random numbers are generated within the range, and the ordinate is y. node exist Random numbers are generated within a range to obtain the initial coordinates of each node;

[0031] S223: Coordinate Iteration Calculation

[0032] The motion of the nodes is simulated discretely using velocity and acceleration, and the position of the nodes is updated; based on the latest position of the nodes, the magnitude and direction of the forces acting on the nodes are updated, thereby updating the acceleration of the nodes;

[0033] S224: Node density calculation based on two-dimensional kernel density estimation

[0034] Using a Gaussian kernel as the kernel function, for each data point, a Gaussian kernel function is plotted with that point as the center:

[0035]

[0036] Among them, V n d represents the region volume, and d represents the data dimension. It is the standard normal probability density function, h n This is the bandwidth parameter, used to control the smoothness; x is a variable representing the coordinate position.

[0037] Next, by superimposing all the Gaussian kernel functions, the continuous probability density function is obtained:

[0038]

[0039] Where n is the number of data points, x i It is the i-th data point.

[0040] Based on this continuous probability density function p n (x), calculate the smooth distribution density of nodes on the two-dimensional plane.

[0041] Furthermore, in step S3, the method for rendering and drawing the node link graph is as follows:

[0042] S31: Draw nodes

[0043] According to the fill color mapping scheme, set the fill color of the node, set different labels for the node according to the node label type mapping scheme, and draw them at the corresponding positions calculated in S2;

[0044] S32: Draw relationships on demand

[0045] The relationship between two nodes is represented by a line segment connecting them. The color of the line segment is determined by the type of the node at its endpoint, and the line color is consistent with the fill color mapping scheme.

[0046] Furthermore, in step S4, the specific steps for interaction design and implementation are as follows:

[0047] S41: Calculate the Thiessen polygon diagram

[0048] The canvas plane is triangulated using Delaunay triangulation to form a Thiessen polygon graph. Each polygon in the Thiessen polygon graph contains a data point, and the distance from any other position within the polygon to the data point is less than the distance to any other data point. The polygon is then used as the trigger area for the corresponding data point.

[0049] S42: Construct a quadtree

[0050] An auxiliary quadtree is constructed to reduce the time complexity of intersection determination, enabling the rapid location of the intersection relationship between the mouse pointer and the Thiessen polygon in the interactive scene; during retrieval, the search is performed downward along the tree structure to quickly complete the region determination, with a time complexity of O(log4N), where N is the number of data points;

[0051] S43: Define interactive operations

[0052] Interactive operations are based on user clicks on a single node and the continuous selection of multiple nodes to specify different interactive intentions; two basic interactive operations are defined: viewing information of a single node and filtering the display of links between nodes.

[0053] Furthermore, in step S43, the basic interactive operation is specifically defined as follows:

[0054] S431: View information for a single node

[0055] A user's single click on a node is considered as viewing information about that single node. At this time, the basic information of the single node is displayed by overlaying an information window on top of the visualization canvas.

[0056] S432: Filter and display inter-node association links

[0057] If a user clicks on a node again after viewing information for a single node, this is considered a filtering operation to display key links between nodes, and the selected node information is displayed in an information window. In this interactive state, the node selected by the user for the first time is treated as the initial node, and each node selected by the user thereafter is treated as a destination node. The path from the initial node to any destination node after passing through a relay node is highlighted, and the relay nodes are also highlighted. At the same time, the node information of the initial node and the destination node is still displayed through an information window overlaid on the canvas.

[0058] The beneficial effects of this invention are:

[0059] 1) This invention addresses the shortcomings of existing biological research methods in visualizing RNA-disease association networks. Current visualizations of RNA-disease association networks use homogeneous node link diagrams, which are inadequate for displaying information from heterogeneous nodes. Furthermore, existing visualization methods can only present basic associations within the RNA-disease association network, failing to provide in-depth comparisons of node attribute differences or analysis of pathways between specific nodes. This method distinguishes heterogeneous nodes with different attributes through color mapping and typographic design, and introduces a novel interactive design that allows users to interactively select initial and final nodes to analyze and compare multi-hop pathways between nodes, supporting more complex analytical tasks.

[0060] 2) This invention addresses the shortcomings in rendering and interactive performance in existing RNA-disease association network visualizations. Due to the large number of nodes in RNA-disease association networks, graphics rendering is demanding and prone to visual confusion; interactive elements also suffer from confusion and occlusion issues. This invention optimizes rendering performance and improves interactive responsiveness through methods such as density contour lines, delayed node rendering, Thiessen polygons, and quadtree indexing. Attached Figure Description

[0061] Figure 1 This is a flowchart of the overall operation logic of the present invention.

[0062] Figure 2 This is a schematic diagram of the main user interface content and layer layout of the present invention. Detailed Implementation

[0063] This invention reduces visual confusion between nodes and edges in the visualization of RNA-disease associations and improves rendering efficiency by combining node link graphs with density contour plots. Furthermore, it proposes an improved force-guided calculation and rendering process, reducing the number of rendering calls during force-guided calculations and further enhancing graphics rendering efficiency. Simultaneously, this invention proposes an interaction performance improvement method based on Delaunay polygons and quadtree indexes, and a novel interaction filtering method to help users perform complex analysis tasks faster. The technical solution includes: data acquisition and processing, node layout calculation and contour drawing, node link graph rendering and drawing, and interaction design. Specific steps are as follows:

[0064] Step 1: Data Acquisition and Processing

[0065] For the user-provided RNA-disease association database (hereinafter referred to as the internal database), retrieve matching RNA and disease information data from the external biological experiment database (hereinafter referred to as the external database), establish link relationships and indexes, and improve retrieval speed; for the user-provided deep learning model prediction results (hereinafter referred to as prediction results), establish a correspondence between them and the internal RNA-disease association database, and form a unified data representation.

[0066] Establish links and indexes between the internal database, external database, and prediction results to form a unified representation. Referring to commonly used industry formats, the internal database, external database, prediction results, and the final unified representation all use JSON format data. The data format in the database is shown below:

[0067] 1. Define the data source and data format.

[0068] Three data sources are defined: an internal database, an external database, and prediction results. Two data types are defined: nodes and associations. The internal database stores nodes and associations. At the node level, it includes three types of nodes: lncRNA (long non-coding RNA), miRNA (microRNA), and disease. Associations include two types: association and similarity, as shown in Table 1. The external database stores known RNA-disease associations and descriptions of the data attributes of each node. The data descriptions stored in the external database are shown in Table 2. The prediction results store the deep learning model's predictions of the associations between nodes existing in the internal database, including association (cross-classification relationships) and similarity (same-classification relationships), as shown in Table 3. It should be noted that due to the different computational principles and functions of different models, the two types of relationships in the prediction results are not strictly required to appear simultaneously.

[0069] (1) Define data sources: Based on the actual needs of bioinformatic researchers, this invention supports three data sources as inputs: a private RNA-disease association database provided by the user, representing the scope of RNA and diseases currently being studied and of interest to the user and their association information; an external biological experiment database, representing additional data and relationships of RNA and diseases obtained from public channels; and deep learning model prediction results, representing RNA-disease associations predicted by the user's private deep learning model.

[0070] (2) Define the data format: Referring to commonly used formats in the industry and the actual needs of bioinformatics researchers, this method supports JSON format as the data format for the above databases. The field attributes that should be included in the data source are shown in Tables 1, 2 and 3.

[0071] Table 1. Description of data stored in the internal database

[0072]

[0073]

[0074] Table 2. Description of data stored in the external database.

[0075]

[0076] Table 3 describes the data stored in the prediction results.

[0077]

[0078] 2. Data Source Integration. Based on unique identifiers, internal and external databases and deep learning model prediction results are linked to form an integrated JSON data format.

[0079] The data stored in the internal database, external database, and prediction results are linked together using unique identifiers to form a unified representation. The data types and field descriptions are shown in Table 4.

[0080] Table 4. Data Types and Field Descriptions in the Uniform Representation

[0081]

[0082]

[0083] 3. Data Pre-computation: Based on the integrated dataset, some parameters of the graph structure are pre-computed and stored in the JSON data format of the integrated dataset, thereby reducing the computational burden in large-scale graph structure visualization interactions. Specifically, for the graph as a whole, the number of graph nodes N is pre-computed. nodes Number of associations N in the graph links And calculate the degree D of each node. nodes In this step, the degree of a node refers to its undirected degree, which is the sum of its in-degree and out-degree.

[0084] Step 2: Node layout calculation and outline drawing

[0085] 1. Establish a graph structure.

[0086] Based on the integrated JSON data format created in step one, a graph data structure is created in memory. The graph data structure employs an extended adjacency matrix representation. Specifically, pointers are stored in each cell of the adjacency matrix instead of actual values, thus supporting the storage of complex edge data within the adjacency matrix data structure.

[0087] 2. Force-guided layout iteration and kernel density estimation.

[0088] Based on graph data structures, the force-guided algorithm can compute a better layout for graph visualization by iteratively updating the positions of nodes and edges. At the end of each iteration, the weighted density of the current node is calculated, and the kernel density estimation result is updated. Specifically, this step involves:

[0089] (1) Define the coordinate system: The coordinate system is used to determine the coordinate mapping from the force-guided layout to the canvas space. In this method, the center of the canvas is defined as the origin of the coordinate system, i.e., coordinates (0,0). The width and height of the canvas are measured as W and H, respectively. The top left corner of the canvas is defined as... The bottom right corner is defined as

[0090] (2) Initialize coordinates: Set a random initial value for the position coordinates of each node, thus allowing the force-guided algorithm to initialize. The position of the node is randomly selected within the canvas area. Specifically, for each node, for the x-coordinate... node exist Random numbers are selected with equal probability within a range, and the result is plotted on the y-axis. node exist Generate a random number within the range.

[0091] (3) Coordinate Iteration Calculation. The force-guided algorithm calculates the velocity and acceleration of nodes through discrete force simulation, thereby calculating the position and position change of nodes. In each iteration, the force-guided algorithm solves for the current position and velocity of a node based on its own position, acceleration, and velocity calculated in the previous iteration. Based on the latest position of the node, the magnitude and direction of the force on the node are updated, thereby updating the acceleration of the node. In this invention, nodes are affected by three forces: centripetal force, which acts on all nodes to ensure that the geometric center of the node is located at the origin; repulsive force, which acts on all nodes to separate nodes from each other and reduce visual confusion; and spring force, which acts on nodes that are directly connected by edges to bring related nodes closer together.

[0092] (4) Node density calculation based on two-dimensional kernel density estimation: Due to the large number of nodes and associations in the RNA-disease association network, drawing and updating nodes and their positions in each iteration generates significant rendering pressure, leading to unsmooth operation on low-performance platforms. This invention replaces node drawing and updating in iterations with density hierarchy contour lines based on two-dimensional kernel density estimation, improving interactive response speed while maintaining dynamic transition effects. Specifically, this step uses node density calculation based on two-dimensional kernel density estimation. A Gaussian kernel is selected as the kernel function, and based on experience, the bandwidth h is chosen. n = 20.434. For each data point, a Gaussian kernel function is obtained with that point as the center:

[0093]

[0094] Among them, V n d represents the region volume, and d represents the data dimension. It is the standard normal probability density function.

[0095] Next, by superimposing all the Gaussian kernel functions, the continuous probability density function can be obtained:

[0096]

[0097] Where n is the number of data points, x i It is the i-th data point.

[0098] Based on this continuous probability density function p n (x) can be used to calculate the smooth distribution density of nodes on the two-dimensional plane, thus providing data support for density contour line calculation.

[0099] 3. Calculate the density hierarchy contour line based on the moving grid algorithm.

[0100] Based on the probability density function obtained in the previous step, the node density at different locations can be calculated, forming a contour line similar to a contour line, used to abstractly represent the node position distribution calculated by the force-guided algorithm. In this patent, a moving square algorithm is used to calculate the density contour line. This invention does not involve the specific implementation of the moving square algorithm, but only briefly outlines the algorithm steps:

[0101] First, the two-dimensional plane is divided into several cubic elements. Each cubic element is a square with four vertices and a side length of four units. Each vertex has a scalar value, which in this invention is equal to p in S224. n (x) is the value of the continuous probability density function at this point.

[0102] Then, for each element, the scalar values ​​of its four vertices are compared with the given contour line values ​​to determine whether the element intersects with the contour line. If they intersect, the configuration of the contour line within the element can be determined by looking up a table based on the relationship between the values ​​of the four vertices and the contour line. For intersecting elements, the position where the contour line intersects the edge can be calculated using linear interpolation based on the scalar values ​​of the vertices on its adjacent edges.

[0103] Finally, connecting the line segments generated by all the square elements yields the complete contour line profile. It is important to note that in this invention, contour line profiles need to be calculated separately for the three different node types to visually distinguish between heterogeneous node types.

[0104] The density contour line obtained in this step is an array of point coordinates. The closed shape enclosed by all the points in this array is the density contour line corresponding to the density value p. The density value inside the closed shape is higher than p, while the density value outside the closed shape is lower than p. If the density contour line is composed of multiple closed shapes, this step returns multiple arrays of point coordinates. By adjusting the value of p, the meaning of density represented by the contour line can be controlled.

[0105] 4. Draw density contour maps.

[0106] Based on the density contour lines obtained in the previous step, the density can be displayed on a visualization canvas using a plotting method. Specifically, this method assigns different colors to three node types: incRNA, miRNA, and disease, and sets different transparency values ​​for different density levels to encode node density. The mapping schemes for the fill color and transparency of the contour plot are shown in Tables 5 and 6.

[0107] Table 5 Fill Color Mapping Scheme

[0108] lncRNA (long non-coding RNA) RGB(70,130,180) miRNA (microRNA) RGB(255,165,0) disease RGB(0,128,0)

[0109] Table 6. Transparency Mapping Scheme for Contour Maps

[0110] 1 1 0.1 2 2 0.2 3 5 0.3 4 10 0.4 5 20 0.5 6 30 0.6

[0111] 5. Check if the iteration limit has been reached.

[0112] The force-guided algorithm controls its convergence by calculating the number of iterations. If the iteration limit is reached, it proceeds to the next step; otherwise, it returns to step (3) and executes again.

[0113] Step 3: Rendering and drawing the node connection graph

[0114] After the force-guided layout converges, all nodes in the RNA-disease association network are plotted, and the association relationships are plotted as needed based on the interaction.

[0115] 1. Node Drawing. To improve the distinguishability of different types of nodes in heterogeneous networks, both color and labels are used to represent node types. To maintain visual consistency, the node filling color mapping scheme adopts the color mapping scheme in Table 5, along with density contour lines. Figure 1 The node labeling mapping scheme is shown in Table 7. The node positions are determined using the positions from step two when the force-guided algorithm exits the iteration.

[0116] Table 7 Node Tag Type Mapping Scheme

[0117] lncRNA (long non-coding RNA) Circle miRNA (microRNA) Triangle disease Rectangle

[0118] 2. Draw relationships as needed. In the RNA-disease association network, the relationships are quite dense; displaying all relationships would lead to significant rendering overhead and visual confusion. This method combines interactive design to display relationships as needed. Specifically, line segments connecting two nodes represent the relationships between them. The color of the line segment is determined by the type of the node at its endpoint, and the line color is consistent with the mapping scheme in Table 5. The visual channel mapping of the line segments is shown in Table 8.

[0119] Table 8 shows the visual channel mapping of line segments with related relationships.

[0120] color Node type of the endpoint of the association Consistent with the color mapping scheme in Table 5 transparency Confidence / Similarity It only applies to situations where there is a relationship between the corresponding fields. Linear Association type Related: Solid line; Similar: Dashed line

[0121] Step 4: Interaction Design and Implementation

[0122] Interactive design allows for the provision of additional information to users on demand while maintaining a clean main visual canvas. Since RNA-disease association networks are typically large-scale, optimization strategies such as indexing are necessary to improve interactive performance.

[0123] 1. Calculate the Thiessen polygon graph. To address the issue of potentially inaccurate interactions caused by occlusion between nodes in large-scale node-linked graphs, the canvas plane can be triangulated using Delaunay triangulation to form a Thiessen polygon graph. In the Thiessen polygon graph, each polygon region contains exactly one data point, and the distance from any position within the polygon to that data point is less than the distance to any other data point. In this method, this polygon is used as the interaction trigger region for its internal data points.

[0124] 2. Construct a quadtree. A quadtree is a data structure that can efficiently perform range queries on a two-dimensional plane. This method uses a quadtree to quickly locate the intersection between the mouse pointer and the Thiessen polygon in an interactive scene. During retrieval, the search is performed downwards along the tree structure to quickly determine the region, with a time complexity of O(log₄N), where N is the number of data points.

[0125] 3. Define interactive actions. Interactive actions are based on user clicks on a single node and specifying different interaction intentions through continuous selection of multiple nodes. The specific interactive actions supported by this method are:

[0126] (1) Viewing Individual Node Information. A single click on a node by the user is considered as viewing the information of that node. This method displays the basic information of a single node by overlaying an information window on top of the visualization canvas. The basic information is shown in Table 4. The information window can be dragged or closed manually by the user, and multiple information windows can be opened simultaneously for horizontal comparison.

[0127] (2) Filtering the display of links between nodes. If the user selects multiple nodes consecutively, this is considered filtering the display of links between nodes. In this case, the node information selected by the user is displayed in an information window. The first node selected by the user is designated as the "initial node," and all other nodes are considered "endpoint nodes." The path from the "initial node" to any "endpoint node" after passing through a relay node is highlighted, along with the relay nodes themselves. The node information for both the initial and endpoint nodes is still displayed through an overlay information window on top of the canvas.

Claims

1. A method for visual analysis of RNA-disease associations based on density relationship diagrams, characterized in that, Includes the following steps: S1: Data Acquisition and Processing The system uses a user-provided RNA-disease association database as an internal database and an external biological experiment database as an external database. For the internal database, it retrieves matching RNA and disease information data from the external database, establishes links and indexes, and establishes correspondences between the user-provided deep learning model prediction results and the internal database to form a unified data representation. S2: Node Layout Calculation and Outline Drawing The unified data representation obtained from S1 is parsed to form a graph data structure. Based on the weighted force-guided layout algorithm, the acceleration and velocity of the nodes at the current moment are simulated by discrete forces to calculate the position of the nodes at the next moment. At each moment, the weighted density of the nodes on the two-dimensional plane is estimated based on the kernel density estimation algorithm, and the density contour lines of each density level are calculated using the moving grid algorithm and drawn on the drawing interface. This process is repeated iteratively until the specified number of iterations is reached, at which point the algorithm is considered to have converged and the layout calculation is completed. S3: Node Link Graph Rendering Based on the converged node coordinate layout in S2, draw each heterogeneous node; distinguish the biological semantic features of nodes by drawing different labels for nodes with different biological semantics; draw the association relationships between nodes based on the edge coordinate layout; use color and line type to represent different association semantics, and use transparency to represent quantitative indicators in special association relationships. S4: Interaction Design Based on the converged node coordinate layout in S2, the Delaunay algorithm is used to calculate the Thiessen polygon graph on the two-dimensional plane and the corresponding quadtree spatial index. Based on Thiessen polygons and quadtree indexes, the interactive objects during mouse movement are determined; at the same time, interactive operations are defined to support interactive exploration of RNA-disease associations and interactive verification of deep learning model prediction results.

2. The method for visual analysis of RNA-disease association based on density relationship diagrams according to claim 1, characterized in that, In step S1, the specific steps for data acquisition and processing are as follows: S11: For the three data sources: internal database, external database, and prediction results, two data types are defined: nodes and associations. The internal database stores nodes and associations, including three types of nodes at the node level: lncRNA, miRNA, and disease. Associations include two types: association and similarity. The external database stores known RNA-disease associations and descriptions of the data attributes of each node. The prediction results store the prediction results of the deep learning model on the associations between nodes existing in the internal database, including association and similarity. S12: Data source integration: Using unique identifiers to link the data stored in internal databases, external databases, and prediction results to form a unified representation; S13: Pre-computation: After forming a unified data representation, some parameters in the graph structure are pre-computed to improve computational efficiency during real-time rendering. Specifically, for the graph as a whole, the number of graph nodes N is pre-computed. nodes Number of associations N in the graph links Simultaneously, for each node, the degree D of the node is pre-calculated. node .

3. The method for visual analysis of RNA-disease association based on density relationship diagrams according to claim 2, characterized in that, In step S2, the specific steps for node layout calculation and contour line drawing are as follows: S21: Establish graph structure: Based on the unified representation in step S12, create a graph data structure in memory. The graph data structure adopts an extended adjacency matrix representation. Specifically, in each cell of the adjacency matrix, a pointer is stored instead of a specific value, thereby supporting the storage of complex edge data in the adjacency matrix data structure. S22: Force-guided layout iteration and kernel density estimation: Based on the graph data structure, the positions of nodes and edges are updated iteratively, and at the end of each iteration, the weighted density of the current node is calculated and the kernel density estimation result is updated; S23: Calculate the density hierarchy contour line based on the moving grid algorithm: First, divide the two-dimensional plane into several squares. Each square is a square with a side length of 4 units composed of 4 vertices. Each vertex has a scalar value. For each element, the scalar values ​​of its four vertices are compared with the given contour values ​​to determine whether the element intersects with the contour lines. If they intersect, the configuration of the contour lines within the cell can be determined by referring to a table based on the relationship between the four vertices and the contour line values. For intersecting square elements, the position where the contour line intersects the edge is calculated by linear interpolation using the scalar values ​​of the vertices on the adjacent edges; finally, the line segments generated by all square elements are connected to obtain the complete contour line outline. Contour profiles were calculated for three different node types to visually distinguish heterogeneous node types. S24: Density contour plotting: Draw the contour lines on the visualization canvas, set the fill color mapping scheme and node marker type mapping scheme, set different colors for the three node types lncRNA, miRNA and disease; and set corresponding transparency values ​​for different density levels to encode node density; S25: Check if the iteration limit has been reached. If the iteration limit has been reached, proceed to S3; otherwise, return to S22.

4. The method for visual analysis of RNA-disease association based on density relationship diagrams according to claim 3, characterized in that, In step S22, the weighted density of the current node is calculated as follows: S221: Define the coordinate system Define the center of the canvas as the origin of the coordinate system, i.e., coordinates (0,0). Set the width and height of the canvas to W and H respectively. Define the top left corner of the canvas as... The bottom right corner is defined as S222: Initialize coordinates For each node, the x-coordinate is... node exist Random numbers are generated within the range, and the ordinate is y. node exist Random numbers are generated within a range to obtain the initial coordinates of each node; S223: Coordinate Iteration Calculation The motion of the nodes is simulated discretely using velocity and acceleration, and the position of the nodes is updated; based on the latest position of the nodes, the magnitude and direction of the forces acting on the nodes are updated, thereby updating the acceleration of the nodes; S224: Node density calculation based on two-dimensional kernel density estimation Using a Gaussian kernel as the kernel function, for each data point, a Gaussian kernel function is plotted with that point as the center: Among them, V n d represents the region volume, and d represents the data dimension. It is the standard normal probability density function, h n This is the bandwidth parameter, used to control the smoothness; x is a variable representing the coordinate position. Next, by superimposing all the Gaussian kernel functions, the continuous probability density function is obtained: Where n is the number of data points, x i It is the i-th data point. Based on this continuous probability density function p n (x), calculate the smooth distribution density of nodes on the two-dimensional plane.

5. The method for visual analysis of RNA-disease association based on density relationship diagrams according to claim 3, characterized in that, In step S3, the node link graph rendering and drawing method is as follows: S31: Draw nodes According to the fill color mapping scheme, set the fill color of the node, set different labels for the node according to the node label type mapping scheme, and draw them at the corresponding positions calculated in S2; S32: Draw relationships on demand The relationship between two nodes is represented by a line segment connecting them. The color of the line segment is determined by the type of the node at its endpoint, and the line color is consistent with the fill color mapping scheme.

6. The method for visual analysis of RNA-disease association based on density relationship diagrams according to claim 2, characterized in that, In step S4, the specific steps of interaction design and implementation are as follows: S41: Calculate the Thiessen polygon diagram The canvas plane is triangulated using Delaunay triangulation to form a Thiessen polygon graph. Each polygon in the Thiessen polygon graph contains a data point, and the distance from any other position within the polygon to the data point is less than the distance to any other data point. The polygon is then used as the trigger area for the corresponding data point. S42: Construct a quadtree An auxiliary quadtree is constructed to reduce the time complexity of intersection determination, enabling the rapid location of the intersection relationship between the mouse pointer and the Thiessen polygon in the interactive scene; during retrieval, the search is performed downward along the tree structure to quickly complete the region determination, with a time complexity of O(log4N), where N is the number of data points; S43: Define interactive operations Interactive operations are based on user clicks on a single node and the continuous selection of multiple nodes to specify different interactive intentions; two basic interactive operations are defined: viewing information of a single node and filtering the display of links between nodes.

7. The method for visual analysis of RNA-disease association based on density relationship diagrams according to claim 6, characterized in that, In step S43, the basic interactive operation is defined as follows: S431: View information for a single node A user's single click on a node is considered as viewing information about that single node. At this time, the basic information of the single node is displayed by overlaying an information window on top of the visualization canvas. S432: Filter and display inter-node association links If a user clicks on a node again after viewing information for a single node, this is considered a filtering operation to display key links between nodes, and the selected node information is displayed in an information window. In this interactive state, the node selected by the user for the first time is treated as the initial node, and each node selected by the user thereafter is treated as a destination node. The path from the initial node to any destination node after passing through a relay node is highlighted, and the relay nodes are also highlighted. At the same time, the node information of the initial node and the destination node is still displayed through an information window overlaid on the canvas.

Citation Information

Patent Citations

  • Data visualization method and data visualization system based on hierarchical model

    CN105912562A

  • Chromatin hierarchical structure analysis visualization method based on gene data

    CN113946730A