Method and System To Manipulate Multiple Selections Against a Population of Elements
Methods and systems to manipulate multiple selections against a population of elements are disclosed. One method may include: method for manipulating selections against a population of elements, the method comprising: receiving a plurality of data sets; determining one or more overlaps, each overlap comprising a common region between at least two data sets in the plurality of data sets; displaying a plurality of bars, each bar corresponding to a data set from the plurality of data sets; and for each of the one or more overlaps, displaying one or more elements in at least one of the plurality of bars, each element corresponding to a size of the common region between the at least two data sets.
Latest Quintiles Transnational Corp. Patents:
- Methods for predicting responsiveness of a cancer cell to an anti-IGFR1 antibody by analysis of mutations in PIK3CA
- Systems and Methods For Predictive Analytics for Site Initiation and Patient Enrollment
- Methods and Systems for Predictive Clinical Planning and Design and Integrated Execution Services
- Systems and Methods for Data Integration and Standardization
- Methods for providing an easily comprehendible risk rating for pharmaceutical products
This application claims priority to U.S. Provisional Application No. 61/663,292, filed on Jun. 22, 2012, entitled “Method and System to Manipulate Multiple Selections Against a Population of Elements;” U.S. Provisional Application No. 61/663,057, filed on Jun. 22, 2012, entitled “Systems and Methods For Predictive Analytics For Site Initiation and Patient Enrollment;” U.S. Provisional Application No. 61/663,299, filed on Jun. 22, 2012, entitled “Methods and Systems for Predictive Clinical Planning and Design and Integrated Execution Services;” U.S. Provisional Application No. 61/663,398, filed on Jun. 22, 2012, entitled “Systems and Methods for Subject Identification (ID) Modeling;” U.S. Provisional Application No. 61/663,219, filed Jun. 22, 2012, entitled “Systems and Methods for Analytics on Viable Patient Populations;” U.S. Provisional Application No. 61/663,357, filed Jun. 22, 2012; entitled “Methods and Systems for a Clinical Trial Development Platform;” U.S. Provisional Application No. 61/663,216, filed Jun. 22, 2012; entitled “Systems and Methods for Data Visualization.” The entirety of all of which is hereby incorporated by reference herein.
FIELD OF THE INVENTIONEmbodiments of the disclosure relate generally to displaying complex and overlapping data in a usable fashion. More particularly, embodiments of this disclose relate to methods for displaying a modified Venn diagram.
BACKGROUNDThe Venn diagram was conceived by John Venn. The goal of a properly structured Venn diagram is to clearly show relationships among a small group of data sets within a larger population. But a Venn diagram lacks the ability to clearly show relationships among a larger group of data sets. Accordingly, there is need for methods and systems to manipulate multiple selections against a population of elements.
SUMMARYEmbodiments of the disclosure provide systems and methods for manipulation of multiple selections against a population of elements. In one embodiment, the system comprises a database, a web server that facilities entry and retrieval of data between the database and the user, an application server that displays and accepts information to and from one or more users, and a client that is used to display information to users and to receive input from users.
In another embodiment, the application server and the display are configured to display a subset of data to the user in a Venn bar diagram. In another embodiment, the Venn bar diagram comprises a plurality of horizontal bars.
In another embodiment, each of the plurality of horizontal bars is associated with a specific data set. In another embodiment, each of the plurality of horizontal bars comprises a plurality of columns. In another embodiment, each of the plurality of columns is associated with the relationship between the data represented by the present horizontal bar and the data represented by one or more of the other horizontal bars.
In another embodiment, the horizontal width of the plurality of columns is associated with the amount of overlap between the data represented by the present horizontal bar and the data represented by one or more of the other horizontal bars. In another embodiment, the color of the plurality of columns is associated with the amount of overlap between the data represented by the present horizontal bar and the data represented by one or more of the other horizontal bars.
These embodiments are mentioned not to limit or define the disclosure, but to provide examples to aid understanding thereof. Embodiments are discussed in the Detailed Description, and further description is provided there. Advantages offered by the various embodiments may be further understood by examining this specification.
These and other features, aspects, and advantages of the present disclosure are better understood when the following Detailed Description is read with reference to the accompanying drawings, wherein:
Embodiments of the invention provide systems and methods for manipulation of multiple selections against a population of elements.
Illustrative Embodiment of Systems and Methods for Manipulation of Multiple Selections Against a Population of ElementsThe goal of a properly structured Venn diagram is to clearly show relationships among a small group of data sets within a larger population. But a Venn diagram lacks the capability to clearly show relationships among a larger group of data sets. Thus, there is a need for a modified Venn diagram in the form of a “Venn bar.” A Venn bar has the capability to show relationships among any number of data sets in a clean and efficient display.
For example, an illustrative embodiment of systems and methods for manipulation of multiple selections against a population of elements may comprise a client that allows a user to interface with an application server, web server, and/or database via a network. The client may comprise a display, and further be configured to display data received from the web server or database in a Venn bar.
A Venn bar is a new type of graphic element that extends upon the basic idea of a Venn diagram but which displays the overlap of data in a bar format rather than in the traditional view of overlapping circles. An example of an illustrative Venn bar is shown in and described in detail in relation to
This illustrative example is given to introduce the reader to the general subject matter discussed herein. The invention is not limited to this example. The following sections describe various additional embodiments and examples of systems and methods for manipulation of multiple selections against a population of elements
Illustrative Systems for Manipulation of Multiple Selections Against a Population of ElementsReferring now to the drawings, in which like numerals indicate like elements throughout the several figures,
The client 100 may be, for example, a personal computer (PC), such as a laptop or desktop computer, which includes a processor and a computer-readable media. The client 100 also includes user input devices, such as a keyboard and mouse or touch screen, and one or more output devices, such as a display. In some embodiments of the disclosure, the user of client 100 accesses an application or applications specific to one embodiment of the disclosure. In other embodiments, the user accesses a standard application, such as a web browser on client 100, to access applications running on a server such as application server 200, web server 300, or database 400. For example, in one embodiment, the memory of client 100 stores applications including a design studio application for planning and designing clinical trials. The client 100 may also be referred to as a terminal in some embodiments of the present disclosure.
Such applications may be resident in any suitable computer-readable medium and executable on any suitable processor. Such processors may comprise, for example, a microprocessor, an ASIC, a state machine, or other processor, and can be any of a number of computer processors, such as processors from Intel Corporation, Advanced Micro Devices Incorporated, and Motorola Corporation. The computer-readable media stores instructions that, when executed by the processor, cause the processor to perform the steps described herein.
The client 100 provides a software layer, which is the interface through which the user interacts with the system by receiving and displaying data to and from the user. In one embodiment, the software layer is implemented in the programming language C# (also referred to as C Sharp). In other embodiments, the software layer can be implemented in other languages such as Java or C++. The software layer may be graphical in nature, using visual representations of data to communicate said data to one or more users. The visual representations of data may also be used to receive additional data from one or more users. In one embodiment, the visual representation appears as a spider-like layout of nodes and connectors extending from each node to a central node. In another embodiment the visual representation comprises a modified Venn diagram, called a “Venn bar” as described in further detail below.
Embodiments of computer-readable media comprise, but are not limited to, an electronic, optical, magnetic, or other storage device, transmission device, or other device that comprises some type of storage and that is capable of providing a processor with computer-readable instructions. Other examples of suitable media comprise, but are not limited to, a floppy disk, CD-ROM, DVD, magnetic disk, memory chip, ROM, RAM, PROM, EPROM, EEPROM, an ASIC, a configured processor, all optical media, all magnetic tape or other magnetic media, or any other medium from which a computer processor can read instructions. Also, various other forms of computer-readable media may be embedded in devices that may transmit or carry instructions to a computer, including a router, private or public network, or other transmission device or channel, both wired and wireless. The instructions may comprise code from any suitable computer-programming language, including, for example, C, C++, C#, Visual Basic, Java, Python, Perl, and JavaScript.
The application server 200 also comprises a processor and a memory. The application server may execute business logic or other shared processes. The application server may be, for example, a Microsoft Windows Server operating in a .NET framework, an IBM Weblogic server, or a Java Enterprise Edition (J2E) server. While the application server 200 is shown as a single server, the application server 200, and the other servers 300, 400 shown may be combined or may include multiple servers operating together to perform various processes. In such embodiments, techniques such as clustering or high availability clustering may be used. Benefits to architectures such as these include redundancy and performance, among others.
In the embodiment shown in
In the embodiment shown in
The network 500 may be any of a number of public or private networks, including, for example, the Internet, a local area network (“LAN”), or a wide area network (“WAN”). The network connections 150, 250, 350, and 450 may be wired or wireless networks and may use any known protocol or standard, including TCP/IP, UDP, multicast, 802.11b, 802.11g, 802.11n, or any other known protocol or standard. Further, the network 100 may represent a single network or different networks. As would be clear to one of skill in the art, the client 100, servers 200, 300, and database 400 may be in communication with each other over the network or directly with one another.
The database 400 may be one or a plurality of databases that store electronically encoded information comprising the data required to plan, design, and execute a clinical trial. In one embodiment, the data comprises one or more design elements corresponding to the various elements related to one or more clinical trials. The database 400 may be implemented as any known database, including an SQL database or an object database. Further, the database software may be any known database software, such as Microsoft SQL Server, Oracle Database, MySQL, Sybase, or others.
Once data is received from the database, it may be displayed to the user via a display of client 100. One option for displaying the data is using a traditional Venn diagram. In a traditional Venn diagram, data is displayed via circles or bubbles, which are combined to show overlaps in the data. For example,
In
As shown in
Furthermore, as shown in
Further, in the embodiment shown in
In the embodiment shown in
Further, in some embodiments, in addition to representing overlap, one of the bars may represent an “exclusion” or data which is not present. For example, in the embodiment shown in
In some further embodiments, the Venn bar may assign specific colors to varying vertical columns to enable the user to quickly perceive overlaps. For example, in one embodiment, the section that comprises all the user's inclusions and not the user's exclusion may be green. In such an embodiment, the columns that show all the users inclusions, but are excluded by the exclusion may be yellow, enabling the user to determine the impact of that exclusion. Further, in such an embodiment, other colors may be used to display the remaining information. For example, blue may be assigned to each set of data that does not have any overlap with other data, red may be assigned to data from the exclusion that does not overlap with any other data, purple may represent the overlap between the exclusion and each of the other two data sets, and gray may be assigned to data that is not included in one of the selected data sets. In other embodiments, any other color may be used in order to help the Venn bar clearly display raw data and overlaps.
Furthermore, in other embodiments, the user may include additional data sets, which will be displayed as additional horizontal rows. This additional data will be displayed in the Venn bar as additional rows divided into columns showing overlap with other data sets, as described above. Thus, as opposed to a simple Venn diagram, a user may include as much additional data as necessary, and still see the relevant overlaps. Thus, in some embodiments, the Venn bar may include more than three horizontal rows.
In some embodiments, the Venn bar shown in
In other embodiments, a Venn bar may be used to display other types of data. For example, a Venn bar may be used to display data associated with homes for sale. For example, a user may generate a search of housing data and set different parameters, e.g. size of house, number of bedrooms, number of bathrooms, garage, central air conditioning, location, or other data. Each of these data points may appear as a horizontal bar in the Venn bar. Then, based on the overlap data shown in the vertical bars the user may refine home search parameters. For example, if one of the data points requires a basement, but the user is searching in an area where basements are very rare, the user will be able to see that this requirement is greatly restricting the results of the search. Thus, the user may change the requirement for a basement and develop a more efficient search. Further, other types of data may be displayed using a Venn bar, including, but not limited to, shopping data (e.g., home, cars, boats, electronics, jewelry, or other products), career and employment data, relationship information (e.g., data from a dating website or database), data from a social networking site, or any other available category of data.
Illustrative Methods for Manipulation of Multiple Selections Against a Population of ElementsThe method 700 shown in
Next, the client 100 determines overlaps between the received data 704. For example, the system determines if sets of data comprise any overlap. For example, in one embodiment, the data may be associated with patients. In such an embodiment, one set of data comprises patients that are under 65 and another set of data may comprise patients with a heart condition. An overlap occurs when patients under age 65 also have a heart condition identified in the second set of data. In some embodiments, the overlaps may be determined by another system, for example, application server 200, web server 300, database 400, or another computer or server. In such an embodiment, the client 100 further receives data associated with the overlap.
Then client 100 displays the data 706. In one embodiment, the client may display the data in a Venn bar format, as described above. For example, in the embodiment described above, the client 100 may display a horizontal bar associated with the patients over age 65. And further, the client 100 may display a second horizontal bar associated with patients that have a heart condition. The client 100 may further display vertical bars within the horizontal bars, the vertical bars associated with the overlap between the two sets of data.
Next the client 100 determines if additional data was selected 708. For example, if the user requested additional data to be included in the Venn bar. If so, the process returns to step 702 to receive the additional data, and then proceeds through the remaining steps.
Illustrative Embodiments of Manipulation of Multiple Selections Against a Population of ElementsFor example, in the embodiment illustrated in
Embodiments described herein may have a wide range of advantages. For example, a Venn bar may be useful to view representative medical data. For example, in one embodiment a user may design a Venn bar to include hundreds or thousands of data points associated with lifestyle, age, prescribed drugs, income, or any set of potential factors. Based on the overlaps in this data, which may easily be determined by looking at the Venn bar, the user or a computer system may be able to quickly determine correlations between complex, and otherwise seemingly unrelated sets of data. For example, by simply looking at the size of a data set that is excluded by a particular exclusion, a user may be able to quickly determine that that exclusion is removing more than the desired amount of data. This information may be used to redesign a test, or develop newer and better treatments.
Similarly, a user may use a Venn bar to generate more efficient searches. For example, a user searching for a home may determine that a specific inclusion or exclusion is greatly excluding the number of available homes. For example, homes under a certain price may not include a fireplace. A user may be able to quickly determine viewing various housing search criteria in a Venn bar.
GENERAL CONSIDERATIONSThe methods, systems, and devices discussed above are examples. Various configurations may omit, substitute, or add various procedures or components as appropriate. For instance, in alternative configurations, the methods may be performed in an order different from that described, and/or various stages may be added, omitted, and/or combined. Also, features described with respect to certain configurations may be combined in various other configurations. Different aspects and elements of the configurations may be combined in a similar manner. Also, technology evolves and, thus, many of the elements are examples and do not limit the scope of the disclosure or claims.
Specific details are given in the description to provide a thorough understanding of example configurations (including implementations). However, configurations may be practiced without these specific details. For example, well-known circuits, processes, algorithms, structures, and techniques have been shown without unnecessary detail in order to avoid obscuring the configurations. This description provides example configurations only, and does not limit the scope, applicability, or configurations of the claims. Rather, the preceding description of the configurations will provide those skilled in the art with an enabling description for implementing described techniques. Various changes may be made in the function and arrangement of elements without departing from the spirit or scope of the disclosure.
Also, configurations may be described as a process that is depicted as a flow diagram or block diagram. Although each may describe the operations as a sequential process, many of the operations can be performed in parallel or concurrently. In addition, the order of the operations may be rearranged. A process may have additional steps not included in the figure. Furthermore, examples of the methods may be implemented by hardware, software, firmware, middleware, microcode, hardware description languages, or any combination thereof. When implemented in software, firmware, middleware, or microcode, the program code or code segments to perform the necessary tasks may be stored in a non-transitory computer-readable medium such as a storage medium. Processors may perform the described tasks.
Having described several example configurations, various modifications, alternative constructions, and equivalents may be used without departing from the spirit of the disclosure. For example, the above elements may be components of a larger system, wherein other rules may take precedence over or otherwise modify the application of the disclosure. Also, a number of steps may be undertaken before, during, or after the above elements are considered. Accordingly, the above description does not bound the scope of the claims.
The use of “adapted to” or “configured to” herein is meant as open and inclusive language that does not foreclose devices adapted to or configured to perform additional tasks or steps. Additionally, the use of “based on” is meant to be open and inclusive, in that a process, step, calculation, or other action “based on” one or more recited conditions or values may, in practice, be based on additional conditions or values beyond those recited. Headings, lists, and numbering included herein are for ease of explanation only and are not meant to be limiting.
While the present subject matter has been described in detail with respect to specific embodiments thereof, it will be appreciated that those skilled in the art, upon attaining an understanding of the foregoing may readily produce alterations to, variations of, and equivalents to such embodiments. Accordingly, it should be understood that the present disclosure has been presented for purposes of example rather than limitation, and does not preclude inclusion of such modifications, variations and/or additions to the present subject matter as would be readily apparent to one of ordinary skill in the art.
Claims
1. A method for manipulating selections against a population of elements, the method comprising:
- receiving a plurality of data sets;
- determining one or more overlaps, each overlap comprising a common region between at least two data sets in the plurality of data sets;
- displaying a plurality of bars, each bar corresponding to a data set from the plurality of data sets; and
- for each of the one or more overlaps, displaying one or more elements in at least one of the plurality of bars, each element corresponding to a size of the common region between the at least two data sets.
2. The method of claim 1, wherein the one or more elements comprises a color coding.
3. The method of claim 1, wherein the one or more elements comprises segmenting the one or more bars.
4. The method of claim 1, wherein the one or more elements comprises a textual identification of the overlaps.
5. The method of claim 1, wherein the plurality of data sets comprise data associated with patient information
6. The method of claim 5, wherein the patient information comprises one or more of: age, sex, race, prescription information, past disease data, lifestyle data, residence data, employment data, insurance data, or family data.
7. The method of claim 1, wherein the plurality of data sets comprise data associated with one or more of: shopping data, career and employment data, relationship information, or data from a social networking site.
8. The method of claim 1, wherein one or more of the plurality of data sets comprise an inclusion.
9. The method of claim 1, wherein one or more of the plurality of data sets comprise an exclusion.
10. A non-transitory computer readable medium comprising program code, which when executed by a processor is configured to cause the processor to:
- receive a plurality of data sets;
- determine one or more overlaps, each overlap comprising a common region between at least two data sets in the plurality of data sets;
- display a plurality of bars, each bar corresponding to a data set from the plurality of data sets; and
- for each of the one or more overlaps, display one or more elements in at least one of the plurality of bars, each element corresponding to a size of the common region between the at least two data sets.
11. The computer readable medium of claim 10, wherein the one or more elements comprises a color coding.
12. The computer readable medium of claim 10, wherein the one or more elements comprise segmenting the one or more bars.
13. The computer readable medium of claim 10, wherein the one or more elements comprises a textual identification of the overlaps.
14. The computer readable medium of claim 10, wherein the plurality of data sets comprise data associated with patient information
15. The computer readable medium of claim 14, wherein the patient information comprises one or more of: age, sex, race, prescription information, past disease data, lifestyle data, residence data, employment data, insurance data, or family data.
16. The computer readable medium of claim 10, wherein the plurality of data sets comprise data associated with one or more of: shopping data, career and employment data, relationship information, or data from a social networking site.
17. The computer readable medium of claim 10, wherein one or more of the plurality of data sets comprise an inclusion.
18. The computer readable medium of claim 10, wherein one or more of the plurality of data sets comprise an exclusion.
19. A system for manipulating selections against a population of elements, the method comprising:
- an interface configured to receive a plurality of data sets;
- a display configured to output an image to a user;
- a processor coupled to the interface and the display, the processor configured to: determine one or more overlaps, each overlap comprising a common region between at least two data sets in the plurality of data sets; transmit a display signal to the display, the display signal configured to display a plurality of bars, each bar corresponding to a data set from the plurality of data sets; and for each of the one or more overlaps, display one or more elements in at least one of the plurality of bars, each element corresponding to a size of the common region between the at least two data sets.
Type: Application
Filed: Jun 24, 2013
Publication Date: Dec 26, 2013
Applicant: Quintiles Transnational Corp. (Durham, NC)
Inventors: Wade Kenneth Brant (Greenwood, IN), Aaron Naas (Durham, NC), Gavin Nichols (Raleigh, NC)
Application Number: 13/925,229