CN110728124B - 用于可视化电子表格的方法、装置、设备及存储介质 - Google Patents
用于可视化电子表格的方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN110728124B CN110728124B CN201910977985.6A CN201910977985A CN110728124B CN 110728124 B CN110728124 B CN 110728124B CN 201910977985 A CN201910977985 A CN 201910977985A CN 110728124 B CN110728124 B CN 110728124B
- Authority
- CN
- China
- Prior art keywords
- node
- nodes
- spreadsheet
- hierarchy
- visual representation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/177—Editing, e.g. inserting or deleting of tables; using ruled lines
- G06F40/18—Editing, e.g. inserting or deleting of tables; using ruled lines of spreadsheets
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/183—Tabulation, i.e. one-dimensional positioning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本公开涉及用于可视化电子表格的方法、装置、设备及存储介质。一个实施例涉及用于可视化电子表格的计算机实现的方法,该方法包括:获得电子表格的层级结构,其中层级结构包括一个或多个层级,该一个或多个层级具有多个节点,其中每个层级具有至少一个节点并且具有相应的层级类型,每个节点对应于电子表格中的一个或多个单元格,其中层级结构还包括该多个节点之间的隶属关系;提取该多个节点中的每个节点的元数据;至少基于层级结构中的该多个节点之间的计算关系来建立该多个节点之间的依赖关系;以及基于电子表格的层级结构、元数据和该多个节点之间的依赖关系来生成电子表格的层级的可视化表示。
Description
技术领域
本公开涉及用于可视化电子表格的方法、装置、设备及存储介质。
背景技术
在很多行业领域,经常需要构建复杂的电子表格模型。电子表格模型是可以包括数值、文本和公式等的电子表格,用以计算某个或某些变量的值。比如,在金融分析过程中,金融分析师通常需要构建用于财务的电子表格模型,用来计算金融资产的内在价值。用于财务的电子表格模型通常包括数十页、数千行、数万单元格,单元格之间又存在复杂的相互计算关系,其中绝大部分单元格可能是根据其他单元格计算得到的。电子表格中的单元格可以存储文本、时间、数字、或者公式等。如果单元格中存储的是公式,则电子表格通常默认显示的是公式的计算结果,公式被隐藏或者在一个另外的区域显示,这使得用户需要进行进一步的操作才能追踪得到该公式引用的单元格。电子表格模型的复杂性以及单元格之间的非显式计算关系使得电子表格模型非常容易出错,难以被调试,并且难以被除了电子表格模型构建者以外的其他人理解或更改。因此,需要一种改进的用于可视化电子表格的方法、装置、设备及存储介质。
发明内容
本公开的一个实施例涉及用于可视化电子表格的计算机实现的方法,该方法包括:获得电子表格的层级结构,其中层级结构包括一个或多个层级,该一个或多个层级具有多个节点,其中每个层级具有至少一个节点并且具有相应的层级类型,每个节点对应于电子表格中的一个或多个单元格,其中层级结构还包括该多个节点之间的隶属关系;提取该多个节点中的每个节点的元数据;至少基于层级结构中的该多个节点之间的计算关系来建立该多个节点之间的依赖关系;以及基于电子表格的层级结构、元数据和该多个节点之间的依赖关系来生成电子表格的层级的可视化表示。
本公开的另一个实施例涉及用于可视化电子表格的设备,该设备包括:至少一个处理器;以及至少一个存储设备,该至少一个存储设备存储有指令,当指令由至少一个处理器执行时使得至少一个处理器执行上述方法。
本公开的又一个实施例涉及一种非瞬态计算机可读存储介质,该非瞬态计算机可读存储介质存储有指令,当指令由处理器执行时使得执行上述方法。
本公开的再一个实施例涉及一种用于可视化电子表格的装置,该装置包括用于执行上述方法的步骤的部件。
从参考附图的以下描述中,本公开的其他特征和优点将变得清楚。
附图说明
并入说明书中并构成说明书的一部分的附图示出了本公开的实施例,并且与说明书一起用于解释本公开的原理而没有限制。在各图中,类似的标号用于表示类似的项目。
图1是根据本公开的一些实施例的示例性的用于可视化电子表格的装置的框图。
图2是示出根据本公开的一些实施例的示例性的用于可视化电子表格的方法的流程图。
图3是示出根据本公开的一些实施例的示例性电子表格的示意图。
图4A和图4B是示出根据本公开的一些实施例的示例性的电子表格层级结构及节点之间的依赖关系的示意图。
图5是示出根据本公开的一些实施例的示例性的用于建立节点之间的依赖关系的方法的流程图。
图6是示出根据本公开的一些实施例的示例性的电子表格层级结构中的节点的示意图。
图7A-图7C示出了根据本公开的一些实施例的示例性的电子表格的层级的可视化表示。
图8A-图8C示出了根据本公开的一些实施例的示例性的电子表格的层级的可视化表示。
图9示出了根据本公开的一些实施例的示例性的电子表格的层级的可视化表示。
图10示出了根据本公开的一些实施例的示例性的电子表格的层级的可视化表示。
图11A-图11B示出了根据本公开的一些实施例的示例性的电子表格的层级的可视化表示。
图12A-图12C示出了根据本公开的一些实施例的示例性的电子表格的层级的可视化表示。
图13是示出根据本公开的一些实施例的示例性的电子表格的层级的可视化表示中的附加信息的示意图。
图14是示出根据本公开的一些实施例的示例性的用于通过可视化表示来修改电子表格的方法的流程图。
图15示出了根据本公开的一些实施例的其中可应用本公开的一般硬件环境。
具体实施方式
在以下详细描述中,阐述了许多具体细节以提供对所描述的示例性实施例的透彻理解。但是,对于本领域技术人员清楚的是,所描述的实施例可以在没有这些具体细节中的一些或全部的情况下进行实践。在所描述的示例性实施例中,为了避免不必要地模糊本公开的概念,没有详细描述众所周知的结构或处理步骤。
下文所示的每个框图内的方框可以通过硬件、软件、固件或其任意组合来实现以实现本公开的原理。本领域技术人员应该理解的是,每个框图中描述的方框可以被组合或分成子框来实现本公开的原理。
本公开中呈现的方法的步骤旨在是说明性的。在一些实施例中,该方法可以用未描述的一个或多个附加步骤来完成和/或在没有所讨论的一个或多个步骤的情况下完成。此外,方法的步骤被示出和描述的顺序并不旨在是限制性的。
如上所述,传统电子表格模型的复杂性以及单元格之间的非显式计算关系使得电子表格模型非常容易出错,难以被调试,并且难以被理解或更改。具体而言,现有的通用电子表格编辑软件(比如Microsoft Excel)包括一些可视化工具,但这些可视化工具一般都是仅针对数值进行可视化的,比如生成柱状图、饼图等图表。一些独立的可视化软件(比如Microsoft Visio中的Data Visualizer、Lumina Decision Systems中的Analytica)可以通过具有特定字段的电子表格文件生成流程图,并将流程图中的节点与电子表格中的数据关联,但是却无法很好地可视化电子表格中的单元格之间的计算关系。SyncopationSoftware开发的DPL中包括影响图功能,可以用来可视化电子表格中的计算关系。但是,如果一个电子表格包含的公式超过100个,该影响图会包含过多信息,导致影响图会变得非常复杂,用户很难从中找到所需要的信息,因此影响图难以帮助用户理解和调试复杂的电子表格模型。
另外,电子表格模型中除了数值和公式信息外,一般还存储有大量的文本信息和格式信息。而现有电子表格可视化方法大多仅对数值信息或计算关系信息进行可视化,而不会展示电子表格中的语义信息和层次结构的信息。这对于用户对电子表格的理解和调试是不利的。
本申请的实施例可以根据电子表格中的文本信息和格式信息以及单元格的位置将电子表格划分成不同层级的节点,并且可以识别存储有数值和公式信息的单元格的语义信息,从而生成电子表格的具有层级结构和语义信息的可视化表示,这样的可视化表示在本文中也被称为层级的可视化表示(hierarchical visual representation)。
下面结合图1-图2描述根据本公开的一些实施例的用于可视化电子表格的装置和方法。
图1是根据本公开的一些实施例的示例性的用于可视化电子表格的装置100的框图。如图1所示,装置100可以包括层级结构获得部件110、元数据提取部件120、依赖关系建立部件130和可视化表示生成部件140。虽然图1例示了上述4个单元,但这仅仅是用于可视化电子表格的装置的示意性结构,用于可视化电子表格的装置100还可以包括其他可能的单元,或者可以包括上述四个单元中任意单元的组合单元。
层级结构获得部件110可以被配置成获得电子表格的层级结构。根据一个实施例,电子表格的层级结构可以包括一个或多个层级,该一个或多个层级具有多个节点,其中每个层级具有至少一个节点并且具有相应的层级类型(例如,工作簿、页、节、表、块、行、列、区间、单元格等),每个节点对应于电子表格中的一个或多个单元格,其中层级结构还包括该多个节点之间的隶属关系(例如,一个表节点可以具有若干层级类型为行的子节点,也就是说这些层级类型为行的子节点隶属于该层级类型为表的节点)。根据一个实施例,当且仅当与节点A对应的一个或多个单元格包含在与节点B对应的一个或多个单元格内时,节点A是节点B的子节点,或者说节点A隶属于节点B。
根据一个实施例,获得电子表格的层级结构可以包括以下中的一项或多项:识别电子表格中的单元格的位置、内容和格式信息(例如,字体、字号、是否加粗、背景颜色等)中的一项或多项,并且至少基于单元格的位置、内容和格式信息中的一项或多项来识别电子表格的层级结构;以及接收由用户指定的层级结构。
根据一个实施例,电子表格的一个或多个层级的层级类型包括以下中的一项或多项:工作簿、页、节、表、块、行、列、区间和单元格。在一个实施例中,获得电子表格的层级结构可以包括以下中的一项或多项:在工作簿的每个页中检测标题,基于标题的位置、内容和格式信息中的一项或多项来确定标题的级别,并且基于标题的级别来将每个页划分为相应级别的节或表;基于每个表的行和列的位置、内容和格式信息中的一项或多项来确定行和列的级别;基于每个表中的行之间的相关性、列之间的相关性、行的级别、列的级别中的一项或多项将行和列划分为块;以及基于每个行和列中的单元格之间的相关性将单元格划分为区间。
元数据提取部件120可以被配置成提取电子表格的层级结构中的该多个节点中的每个节点的元数据。根据一个实施例,每个节点的元数据可以包括描述该节点的具体含义的语义信息。根据一个实施例,语义信息可以包括名称、标题、标签和批注中的一个或多个。例如,一个工作簿的语义信息可以是这个工作簿的名称和/或描述整个工作簿的文字内容,一个页的语义信息可以是这个页的名称和/或描述该整个页的文字内容,一个节的语义信息可以是这个节的标题,一个表的语义信息可以是这个表的名称,一个行或列的语义信息可以是这个行或列的标签,一个块的语义信息可以是适用于这个块的所有行或列的文字标签,一个单元格的语义信息是这个单元格的行标签和这个单元格的列标签。工作簿、页、节、表、块、行、列、区间和单元格的语义信息都可以包括批注,批注是对这些层级的节点的说明性文字。根据一个实施例,当该节点被显示在电子表格的层级的可视化表示中时,该节点的语义信息也被显示在可视化表示中,从而有助于用户理解电子表格的结构和内容。
根据一个实施例,每个节点的元数据可以包括用于该节点的计算公式中的运算符,例如,加号“+”或乘号“×”、或者多个运算符的组合等。根据一个实施例,电子表格的层级结构中的多个节点中的每个节点的语义信息可以是从与该节点对应的一个或多个单元格的文本内容中提取或生成的,或者可以是由用户定义的。
根据一个实施例,每个节点的元数据还可以包括以下附加信息中的一个或多个:与该节点对应的一个或多个单元格的生成时间、该节点的子节点的数量、与该节点对应的一个或多个单元格中的数值、该数值的单位、该数值所对应的时间点或时间段、与该节点对应的一个或多个单元格的格式、与该节点对应的一个或多个单元格在电子表格中的位置以及从层级结构中的根节点到该节点的路径。
依赖关系建立部件130可以被配置成至少基于层级结构中的多个节点之间的计算关系来建立多个节点之间的依赖关系。应注意,层级结构中的每个节点都可能与其他节点存在依赖关系。对于电子表格中的任意两个单元格A和单元格B,定义单元格A依赖于单元格B当且仅当单元格A至少由单元格B(或由单元格B与其他单元格一起)计算得到。对于层级结构中的节点(例如,行节点)C和D,定义节点C依赖于节点D当且仅当节点C包含的至少一个单元格直接或间接地依赖于节点D包含的至少一个单元格。在一个实施例中,建立层级结构中的多个节点之间的依赖关系还可以基于该多个节点之间的隶属关系。在一些实施例中,建立层级结构中的多个节点之间的依赖关系可以无需知道该多个节点之间的隶属关系,例如,对于可以(例如,基于用户输入)直接获得所有节点之间的计算关系的情况,仅通过节点之间的计算关系就能直接得到节点之间的依赖关系,而无需根据节点之间的隶属关系进行进一步推导。下文将进一步描述建立节点之间的依赖关系的方法。
在一个实施例中,可以针对每个节点存储该节点所在层级的层级类型、该节点的子节点以及该节点的元数据。在一个实施例中,还可以针对每个节点存储该节点所依赖的节点。所存储的这些信息可以后续用于生成或更新电子表格的可视化表示。
可视化表示生成部件140可以被配置成基于电子表格的层级结构、元数据和该多个节点之间的依赖关系来生成电子表格的层级的可视化表示。如下文将进一步描述的,电子表格的层级的可视化表示可以具有多种形式并且可以响应于用户操作而被更新或修改。
在一个实施例中,电子表格的层级的可视化表示可以被逐级展开,以便有助于用户直观地理解电子表格的结构和逻辑关系。在一个实施例中,可视化表示生成部件140可以被配置成接收展开电子表格的层级的可视化表示中的第三节点的输入(例如,双击第三节点或点击指示展开第三节点的图标等等)。在一个实施例中,响应于确定第三节点所在层级的层级类型不是单元格(例如,第三节点是行节点或表节点),更新可视化表示以显示第三节点的子孙节点、多个节点中与第三节点的子孙节点有依赖关系的其他节点以及第三节点的子孙节点和其他节点之间的依赖关系。根据一个实施例,更新可视化表示以显示第三节点的子孙节点包括显示第三节点的子孙节点中的部分节点(例如,预定数量的节点、层级类型为特定层级的节点或者被识别为重要性高的节点等)。根据一个实施例,第三节点的子孙节点包括第一多个子孙节点,并且其中显示第三节点的子孙节点包括以使得第一多个子孙节点在可视化表示中的相对位置与分别和第一多个子孙节点中的每个子孙节点对应的一个或多个单元格在电子表格中的相对位置一致的方式来显示第一多个子孙节点,从而有助于用户在可视化表示中方便、直观地获得关于该一个或多个单元格在电子表格中的相对位置的信息。在一个实施例中,响应于确定第三节点所在层级的层级类型是单元格,更新可视化表示以显示与第三节点有依赖关系的其他节点以及第三节点与其他节点之间的依赖关系。根据一个实施例,显示与第三节点有依赖关系的其他节点包括显示与第三节点有依赖关系的所有节点中的部分节点(例如,预定数量的节点、层级类型为特定层级的节点或者被识别为重要性高的节点等)。根据一个实施例,更新可视化表示以显示与第三节点有依赖关系的其他节点包括:当其他节点的层级类型是单元格时,以使得其他节点在可视化表示中的相对位置与分别对应于其他节点的单元格在电子表格中的相对位置一致的方式来显示其他节点。
在一个实施例中,生成电子表格的层级的可视化表示可以包括显示层级结构中的所在层级的层级类型为页的所有节点及所在层级的层级类型为页的所有节点之间的依赖关系,从而有助于用户直观地理解电子表格的各个页之间的逻辑关系。
在一个实施例中,可视化表示生成部件140可以被配置成响应于接收到可视化与电子表格中的一个页对应的节点的请求,显示该节点、该节点所依赖的与电子表格中的其他页的部分子孙节点对应的第一组节点、依赖于该节点的与电子表格中的其他页的部分子孙节点对应的第二组节点以及该节点与第一组节点和第二组节点之间的依赖关系。在一个实施例中,响应于确定该节点所依赖的与电子表格中的其他页的部分子孙节点对应的第一组节点的数量超过第一阈值,隐藏或折叠第一组节点中的部分节点;以及响应于确定依赖于该节点的与电子表格中的其他页的部分子孙节点对应的第二组节点的数量超过第二阈值,隐藏或折叠第二组节点中的部分节点。通过进行隐藏或折叠,可以避免显示过多信息,防止电子表格的可视化表示过于复杂而使得用户难以获得有用信息。
在一个实施例中,可视化表示生成部件140可以被配置成响应于接收到可视化与电子表格中的一个行对应的节点的请求,显示与该行包括的单元格对应的各个节点以及与该各个节点中的每个节点有依赖关系的、与电子表格中的其他行中的单元格对应的第五组节点及第五组节点与该各个节点中的每个节点之间的依赖关系。应理解,可视化表示生成部件140还可以被配置成以类似的方式来可视化与电子表格中的一个列(或块等)对应的节点。
在一个实施例中,生成电子表格的层级的可视化表示可以包括以层级目录的形式显示电子表格的层级结构,该层级目录可以被逐级展开或收起。在一个实施例中,在可视化表示中可以用不同的显示格式(例如,背景颜色、填充图案等)来表示属于电子表格中的不同的页的节点,还可以用不同的节点显示格式(例如,节点形状、节点背景颜色等)来表示节点的不同的层级类型。在一个实施例中,可视化表示生成部件140可以被配置成响应于接收到选中可视化表示中的节点的输入(例如,单击该节点或者双击该节点等),强调显示选中的节点以及与选中的节点有依赖关系的节点。
在一个实施例中,可视化表示生成部件140可以被配置成响应于接收到查看可视化表示中的一个节点的附加信息的输入(例如,光标停留在该节点处达预定时间或者双击该节点等),显示该节点的附加信息。根据一个实施例,显示该节点的附加信息包括显示与该节点对应的一个或多个单元格的缩略图。根据一个实施例,显示该节点的附加信息包括显示表示与该节点存在隶属关系或依赖关系的一个或多个其他节点的链接。在一个实施例中,可视化表示生成部件140可以被配置成响应于接收到点击一个或多个其他节点的链接的输入来更新或新建可视化表示以显示该一个或多个其他节点。
在一个实施例中,电子表格的层级的可视化表示可以被逐级收起。在一个实施例中,可视化表示生成部件140可以被配置成接收收起电子表格的层级的可视化表示中的第三节点的输入(例如,选择指示收起第三节点的图标、双击第三节点等)。在一个实施例中,可视化表示生成部件140可以被配置成响应于确定第三节点所在层级的层级类型不是单元格,更新可视化表示以隐藏第三节点的子节点、电子表格的层级结构中的多个节点中与第三节点的子节点有依赖关系的第一组其他节点(可以为一个或多个节点)以及第三节点的子节点和第一组其他节点之间的依赖关系,并显示与第三节点有依赖关系的第二组其他节点及第三节点与第二组其他节点之间的依赖关系。即,不再显示第三节点的子节点及其依赖关系,而是显示第三节点及其依赖关系。在一个实施例中,可视化表示生成部件140可以被配置成响应于确定第三节点所在层级的层级类型是单元格,更新可视化表示以隐藏与第三节点有依赖关系的其他节点以及第三节点与其他节点之间的依赖关系。
图2是示出根据本公开的一些实施例的示例性的用于可视化电子表格的方法200的流程图。虽然图2例示了方法200的4个步骤,但这仅仅是用于可视化电子表格的方法的示意性流程,用于可视化电子表格的方法200还可以包括其他可能的步骤,或者可以包括上述四个步骤中任意步骤的组合步骤。
方法200从步骤S210开始,步骤S210可以由图1的层级结构获得部件110执行。在步骤S210处,获得电子表格的层级结构,其中层级结构包括一个或多个层级,该一个或多个层级具有多个节点,其中每个层级具有至少一个节点并且具有相应的层级类型,每个节点对应于电子表格中的一个或多个单元格,其中层级结构还包括该多个节点之间的隶属关系。
方法200前进到步骤S220,步骤S220可以由图1的元数据提取部件120执行。在步骤S220处,提取层级结构中的多个节点中的每个节点的元数据。
方法200前进到步骤S230,步骤S230可以由图1的依赖关系建立部件130执行。在步骤S230处,至少基于层级结构中的多个节点之间的计算关系来建立该多个节点之间的依赖关系。
方法200前进到步骤S240,步骤S240可以由图1的可视化表示生成部件140执行。在步骤S240处,基于所述电子表格的层级结构、所述元数据和所述多个节点之间的依赖关系来生成所述电子表格的层级的可视化表示。
下面将结合图3-图15描述根据本公开的示例性实施例。
图3是示出根据本公开的一些实施例的示例性电子表格300的示意图。虽然图3中示出的电子表格基于Microsoft Excel,但是应当理解本公开的实施例不限于此,而是可以适用于基于任何合适的软件制作的电子表格。
如图3所示,电子表格300为一个工作簿(book),即一个电子表格文件(比如xls文件、xlsx文件)。图3中示出的为该工作簿的一个页(Sheet1)371,该工作簿还可以具有其他的一个或多个页(例如,页372等),其中每个页可以具有一个或多个单元格,例如单元格313。每个单元格可以存储数字、文本或公式等。例如,单元格313处默认显示的是公式的结果“9.9%”,而单元格313的公式“=G12/B12-1”被显示在电子表格文件的其他区域,以指示单元格313的值=G12单元格的值/B12单元格的值-1。如上所述,这种显示方式使得用户难以调试和理解电子表格模型。
如上所述,根据本公开的实施例的用于可视化电子表格的示例性方法可以获得电子表格的层级结构。根据一个实施例,获得电子表格的层级结构可以包括识别电子表格中的单元格的位置、内容和格式信息中的一项或多项,并且至少基于单元格的位置、内容和格式信息中的一项或多项来识别电子表格的层级结构。根据另一个实施例,获得电子表格的层级结构可以包括接收由用户指定的层级结构。根据又一个实施例,电子表格的层级结构可以部分是通过上述方法自动识别得到的,部分是由用户指定的;或者可以是在自动识别得到后被提供给用户,然后根据用户输入来进行完善和补充。还可以使用机器学习算法来获得电子表格的层级结构。例如,可以利用一定数量的(例如,几万个)电子表格以及通过人工或半人工方式获得的相应的层级结构来训练机器学习算法(例如,支持向量机、决策树、神经网络等),然后可以利用经训练的机器学习算法来获得给定电子表格的层级结构。
根据一个实施例,电子表格的一个或多个层级的层级类型可以包括以下中的一项或多项:工作簿、页、节、表、块、行、列、区间和单元格。应理解,上述层级类型仅仅是示例,还可以为层级结构定义任何其他合适的层级类型。根据本公开的实施例,页可以由节或表构成,每个节还可以包括节或者表。例如,在图3中,页371可以包括两个节(“中国”和“美国”),节“美国”包括两个表330和340。表可以由行、列、或块构成。例如,在图3中,表330包括行311、块321“电子产品”等,表340包括行316“销售额”、列312、块314“2017”。块可以是一组联系紧密的行或列,块中的单元格的行或列标签是紧密相关的。例如,在图3中,块314中的单元格的列标签分别为“第一季度”、“第二季度”、“第三季度”、“第四季度”、和“全年”,并且都处于“2017”的列标签下,从而可以被识别为是紧密相关的,因为它们是连续的。块还可以包括块。行和列可以包括单元格,也可以包括区间(interval)。区间可以是一组联系紧密的单元格。例如,图3中的区间315包括四个单元格,这四个单元格属于同一行,列标签紧密相关,并且公式是类似的,因此可以被识别为一个区间。根据本公开的实施例的层级结构中行和列的定义与传统电子表格中行和列的定义有所区别:传统电子表格中定义的一行(一列)是指处于同一水平位置(竖直位置)的所有单元格(例如,列G包括在该竖直位置处的所有单元格);而层级结构中的行和列是在表的范围内定义的,即,如果一页中有多个水平(竖直)排列的表,那么同一水平(竖直)位置可以具有分别属于不同表的多个行(列)。例如,可以认为单元格G9至G13为属于表330的列,而单元格G18-G20为属于表340的列。
在一个实施例中,获得电子表格的层级结构包括以下中的一项或多项:在工作簿的每个页中检测标题,基于标题的位置、内容和格式信息中的一项或多项来确定标题的级别,并且基于标题的级别来将每个页划分为相应级别的节或表;基于每个表的行和列的位置、内容和格式信息中的一项或多项来确定行和列的级别;基于每个表中的行之间的相关性、列之间的相关性、行的级别、列的级别中的一项或多项将行和列划分为块;以及基于每个行和列中的单元格之间的相关性将单元格划分为区间。例如,对于图3的页371,可以首先基于行1、3-5、15、22-24、34仅包括文字内容而检测出标题310“财务报告”、标题320“美国”和350“中国”以及标题322“销售明细”和标题323“利润表”、标题332“销售明细”和标题333“利润表”。然后可以基于标题310位于页371的最上面一行并且与标题320“美国”之间有空白行和/或可以基于标题310和320的格式(例如,字号、字体颜色、背景颜色、缩进、是否黑体\下划线)来确定标题310为描述整个页371的内容的文字信息,以及确定标题310“财务报告”是一级标题、标题320“美国”和350“中国”是二级标题。对于标题“销售明细”322、332和标题“利润表”323、333,可以基于它们下方有包含文本和数字的连续单元格和/或可以基于它们的格式(例如,字号、字体颜色、背景颜色、缩进、是否黑体\下划线)来确定标题322“销售明细”和标题323“利润表”分别为表330和表340的名称。类似地,还可以确定标题332“销售明细”和标题333“利润表”分别为节“中国”中的两个表的名称。然后可以确定行或列的级别,例如,对于表330中的行311“总计”,由于其比行“手机”的视觉显示更为突出(黑体,以及更少的缩进),可以确定行311“总计”具有比行“手机”更高的级别。对于表340中的列312(F18-F20),可以通过列标签“全年”确定该列为全年度的汇总数据,而列B18-B20、列C18-C20、列D18-D20、列E18-E20分别表示第一季度至第四季度的数据。因此,可以确定列F18-F20具有比列B18-B20、列C18-C20、列D18-D20、列E18-E20更高的级别。根据另一个实施例,也可以向列F18-F20指派与列B18-B20、列C18-C20、列D18-D20、列E18-E20相同的级别。表中的行和列可以被划分为块,例如,可以基于行“笔记本电脑”、“平板电脑”、“手机”具有相同的行级别(或者行标签之间的相关性)来将它们划分为属于表330的一个块321。此外,单元格还可以被划分为区间,例如,可以基于单元格L20-O20的列标签之间的相关性以及它们的计算公式的相似性来将单元格L20-O20划分为表340的一个区间315。
如上所述,根据本公开的实施例的用于可视化电子表格的示例性方法可以提取层级结构中的多个节点中的每个节点的元数据。根据一个实施例,每个节点的元数据可以包括描述该节点的具体含义的语义信息。根据一个实施例,语义信息可以包括名称、标题、标签和批注中的一个或多个。例如,一个工作簿的语义信息可以是这个工作簿的名称和/或描述整个工作簿的文字内容和/或对于整个工作簿的批注,一个页的语义信息可以是这个页的名称和/或描述该整个页的文字内容和/或对于整个页的批注,一个节的语义信息可以是这个节的标题和/或对于整个节的批注,一个表的语义信息可以是这个表的名称和/或对于整个表的批注,一个行或列的语义信息可以是这个行或列的标签和/或对于这个行/列的批注,一个块的语义信息可以是适用于这个块的所有行或列的文字标签和/或对于这个块的批注,一个单元格的语义信息是这个单元格的行标签和这个单元格的列标签和/或对于这个单元格的批注。例如,对于图3所示的电子表格,页371的语义信息可以被识别为标题310,即“财务报告”。例如,表330的语义信息可以被识别为标题320“美国”和标题322“销售明细”的组合“美国销售明细”,列312的语义信息可以被识别为列标签“2017全年”,单元格313的语义信息可以被识别为“2018第一季度同比增长率”,区间315的语义信息可以被识别为“2019第一季度、第二季度、第三季度、第四季度毛利润”,或者可以被识别为“2019毛利润”。
根据一个实施例,每个节点的元数据可以包括用于该节点的计算公式中的运算符,例如,单个运算符或者多个运算符的组合等。例如,单元格313的计算公式为G12/B12-1,首先可以从该计算公式中提取出单元格节点G12和B12,从而确定该单元格与单元格G12和B12有计算关系,具体而言,单元格313是由单元格G12和B12计算得到的。进一步地,提取单元格节点313的元数据可以包括提取计算公式G12/B12-1中的运算符“*/*-1”,其中“*”表示占位符。应理解,电子表格中的计算公式不仅包括单元格之间的计算公式,电子表格还可以包括更高级别的节点(例如,行、列等)之间的计算公式。例如,行311“总计”中的单元格B12~P12中可以包含数组公式“{=B9:P9+B10:P10+B11:P11}”,则代表行“总计”与“笔记本电脑”、“平板电脑”、“手机”这三行存在计算关系。根据一个实施例,电子表格的层级结构中的多个节点中的每个节点的语义信息可以是从与该节点对应的一个或多个单元格的文本内容中提取或生成的,或者可以是由用户定义的。例如,用户可以手动输入某个节点的语义信息,或者对自动提取或生成的语义信息进行修改。
根据一个实施例,层级结构中的每个节点(例如,表节点、行节点等)的元数据还可以包括以下附加信息中的一个或多个:与该节点对应的一个或多个单元格的生成时间、该节点的子节点的数量(例如,有多少个行节点隶属于一个表节点)、与该节点对应的一个或多个单元格中的数值、该数值的单位(例如,从表330中提取的单位“百万元”)、该数值所对应的时间点或时间段(例如,单元格节点313对应的时间段是2018年第一季度)、与该节点对应的一个或多个单元格的格式(例如,字体、字号、字体颜色、背景颜色等)、与该节点对应的一个或多个单元格在电子表格中的位置(例如,单元格节点313位于电子表格的第1页的第13行第G列)以及从层级结构中的根节点到该节点的路径。例如,对于图3所示的电子表格,层级结构中的根节点可以是工作簿300,从根节点到单元格节点的路径可以是“工作簿300→页371→表330→行317→单元格313”。
下面结合图4A和图4B进一步描述根据本公开的示例性实施例的电子表格层级结构以及如何建立节点之间的依赖关系。
图4A和图4B是示出根据本公开的一些实施例的示例性的电子表格层级结构400及节点之间的依赖关系的示意图。应理解,图4A是示例性的,如图4A和图4B所示的层级结构仅仅是为了便于理解,而并不意图限制层级结构的存储格式。图4A中的层级结构例如可以是由图1的层级结构获得部件110获得的。
在图4A中用不同的节点形状示出了层级结构中的不同层级类型的节点,用实线箭头示出了节点之间的隶属关系,并且用虚线箭头示出了节点之间的依赖关系。假设节点A隶属于节点B,则实线箭头从B指向A,并且称节点B是节点A的父节点,节点A是节点B的子节点。定义没有父节点的节点为根节点,定义没有子节点的节点为叶子节点。除了根节点和叶子节点之外的所有节点有且仅有一个父节点,从根节点到一个节点所经分支上的所有节点被称为该节点的祖先节点,以一个节点为根的子图中的任一节点都称为该节点的子孙节点。用椭圆形示出的节点401是根节点,其层级类型为工作簿,节点401对应于电子表格的整个工作簿。用圆角矩形示出的节点403的层级类型为表,它具有层级类型为行的两个子节点404和405,这两个子节点用八边形示出。节点402的层级类型同样是行,但它不隶属于节点403,而是直接隶属于根节点401。也就是说,工作簿总共包括三个行,其中与节点404和405对应的行属于与节点403对应的表。层级类型为单元格的节点用菱形示出,其中单元格节点406和407隶属于行节点402,单元格节点408隶属于行节点404,而单元格节点409和410隶属于行节点405。应理解,图4A是电子表格的层级结构的示例,实际的层级结构可以包括比图4A更多或更少或者不同的层级类型,并且每个层级可以包括任意合适数量的节点。
假设与节点408对应的单元格中的计算公式指示与节点408对应的单元格由与节点402对应的行计算得到(例如,与节点408对应的单元格的值=SUM(与节点402对应的行)),则可以确定节点408依赖于节点402,这由节点402和节点408之间的虚线箭头434表示。假设与节点407对应的单元格中的计算公式指示与节点407对应的单元格由与节点410对应的单元格计算得到(例如,与节点407对应的单元格的值=与节点410对应的单元格的值×2),则可以确定节点407依赖于节点410,这由节点410和节点407之间的虚线箭头442表示。下文将进一步结合图4A、图4B和图5描述根据本公开示例性实施例的用于建立节点之间的依赖关系的方法。
图5是示出根据本公开的一些实施例的示例性的用于建立节点之间的依赖关系的方法500的流程图。虽然图5例示了方法500的3个步骤,但这仅仅是用于建立节点之间的依赖关系的方法的示意性流程,该方法500还可以包括其他可能的步骤,或者可以包括上述三个步骤中任意步骤的组合步骤。方法500例如可以由图1的依赖关系建立部件130执行。
方法500从步骤S510开始,在步骤S510处,对于层级结构中的每个节点,确定该节点由另外的一个或多个节点计算得到。根据一个实施例,可以通过读取与该节点对应的(一个或多个)单元格的内容包括公式来确定该节点由另外的一个或多个节点计算得到。例如,对于图3中的单元格313,基于它的内容为公式G12/B12-1,可以确定与单元格313对应的节点由与单元格G12对应的节点和与单元格B12对应的节点计算得到。又例如,参考图4A,可以确定与节点408对应的单元格由与节点402对应的行计算得到,并且与节点407对应的单元格由与节点410对应的单元格计算得到。
方法500前进到步骤S520,在步骤S520处,对于对应于该节点的一个或多个第一单元格中的每个第一单元格,确定该第一单元格由对应于另外的一个或多个节点的一个或多个第二单元格中的第一组第二单元格计算得到。返回参考图4A,对于与节点408对应的单元格,例如根据与节点408对应的单元格的值=SUM(与节点402对应的行),可以确定该单元格由与节点406对应的单元格和与节点407对应的单元格计算得到。应理解,由于节点408的层级类型本身为单元格,所以此处仅需要确定与节点408对应的一个单元格的计算关系。而如果最初确定的是节点405的计算关系,则需要分别确定隶属于节点405的层级类型为单元格的节点409和410的计算关系。另外,取决于具体的计算关系,与节点408对应的单元格由与节点402对应的行计算得到不一定意味着与节点408对应的单元格由与节点402对应的行中的每个单元格计算得到。例如,假设包括三个单元格的行A的计算公式为等于包括三个单元格的行B的值,则可以确定行A中的第一个单元格由行B中的第一个单元格计算得到,而不是由行B中的每个单元格计算得到。通过步骤S520,可以将可能具有比单元格更高的层级类型的节点之间的计算关系分解为该节点的子孙节点中层级类型为单元格的节点的计算关系。而对于在步骤S510中确定的与节点407对应的单元格和与节点410对应的单元格之间的计算关系,由于节点407和410所在层级的层级类型已经是单元格,所以该步骤S520实际上可以被省略。
方法500前进到步骤S530,在步骤S530处,建立如下依赖关系:与该第一单元格对应的第一节点及该第一节点的所有祖先节点依赖于与第一组第二单元格各自对应的第一组第二节点及第一组第二节点的所有祖先节点。参考图4B,例如,对于节点408,在步骤S520处已经确定与节点408对应的单元格由与节点406对应的单元格和与节点407对应的单元格计算得到。从而可以建立如下依赖关系:节点408以及节点408的所有祖先节点中不是节点406祖先节点的节点依赖于节点406和节点406的所有祖先节点中不是节点408的祖先节点的节点,节点408以及节点408的所有祖先节点中不是节点407祖先节点的节点依赖于节点407和节点407的所有祖先节点中不是节点408的祖先节点的节点。图4B示出了对于图4A所示的层级结构所构建的依赖关系。注意,为了图示清楚,在图4B中省略了节点408及其祖先节点与节点407及其祖先节点之间的依赖关系。即,可以建立如下依赖关系:依赖关系431,指示节点408依赖于节点406;依赖关系432,指示节点404依赖于节点406;依赖关系433,指示节点403依赖于节点406;依赖关系434,指示节点408依赖于节点402;依赖关系435,指示节点404依赖于节点402;依赖关系436,指示节点403依赖于节点402。又例如,对于节点407,在步骤S520处已经确定与节点407对应的单元格由与节点410对应的单元格计算得到。从而可以建立如下依赖关系:节点407以及节点407的所有祖先节点中不是节点410祖先节点的节点依赖于节点410和节点410的所有祖先节点中不是节点407祖先节点的节点。即,可以建立如下依赖关系:依赖关系442,指示节点407依赖于节点410;依赖关系443,指示节点407依赖于节点405;依赖关系445,指示节点407依赖于节点403;依赖关系441,指示节点402依赖于节点410;依赖关系444,指示节点402依赖于节点405;依赖关系446,指示节点402依赖于节点403。
图6是示出根据本公开的一些实施例的示例性的电子表格层级结构中的节点600的示意图。应理解,节点600可以是图4A-图4B中的层级结构中的任意一个节点。根据本公开示例性实施例的存储如图4A-4B所示的层级结构中的节点信息的数据结构可以被称为层级图(hierarchy graph)。应理解,图4A和图4B所示的树状的层级结构仅仅为了方便理解,并不意图限制层级结构的存储方式。可以利用任意合适的数据结构来存储层级图,例如,链表、有向图等。
根据一个实施例,可以针对每个节点存储该节点所在层级的层级类型602、该节点的子节点604和该节点的元数据606。参考图4B,例如对于节点404,可以存储节点404所在层级的层级类型为行,节点404的子节点为节点408(例如,可以存储子节点的编号列表或者存储指向子节点的指针列表等),并且可以存储节点404的元数据(例如,与节点404对应的行的行标签、与节点404对应的单元格在电子表格中的位置等等)。上文已经参考图3描述了节点的元数据,在此不再赘述。
根据一个实施例,还可以可选地针对每个节点存储该节点所依赖的节点608(例如,可以存储所依赖的节点的编号或者存储指向所依赖的节点的指针等)。参考图4B,例如对于节点404,可以存储节点404所依赖的节点包括节点402和节点406。应注意,存储每个节点所依赖的节点不是必须的,可以在生成电子表格的层级的可视化表示之前实时地确定每个节点所依赖的节点,而不进行存储。
下面描述根据本公开的实施例的生成电子表格的层级的可视化的方法。
图7A-图7C示出了根据本公开的一些实施例的示例性的电子表格的层级的可视化表示。为了清楚起见,未示出与这些可视化表示对应的电子表格。在图7A的可视化表示700A中,显示了层级结构中的所在层级的层级类型为页的所有节点及所在层级的层级类型为页的所有节点之间的依赖关系。根据一个实施例,图7A的可视化表示700A可以是响应于接收到可视化层级类型为页的所有节点的请求而显示的。例如,该请求可以是对指示可视化层级类型为页的所有节点的图标(例如,文字、按钮或图形等)的选择(例如,单击、双击、轻扫、长按(对于具有触敏表面的显示设备而言)等)。如图7A所示,可视化表示700A包括节点701-707以及表示它们之间的依赖关系的箭头,并且节点701-707的语义信息(例如,页的名称)也被显示在相应的节点上。在可视化表示700A中,用不同的填充图案来表示属于电子表格中的不同页的节点,并且节点701-707都用六边形来表示,从而指示这些节点都具有相同的层级类型(即,页)。应理解,可视化表示700A仅仅是示例性的,还可以用其他不同的显示格式(例如,填充颜色、节点形状、节点大小等)来表示属于电子表格中的不同页的节点,以及用相同的其他节点格式(例如,填充颜色、填充图案、节点大小等)来表示这些节点属于同一层级。由此,这种电子表格的层级的可视化表示可以清楚、直观地向用户呈现出电子表格中包括哪些页、这些页的含义以及这些页之间的依赖关系。
根据一个实施例,如图7B所示,响应于接收到选中可视化表示700A中的节点701的输入,可以强调显示所选中的节点701以及与节点701有依赖关系的节点702-705。选中可视化表示700A中的节点701的输入可以是单击节点701的输入、双击节点701的输入或者对指示强调显示节点701的图标(例如,文字、图形、按钮等)的选中。如图7B所示,对所选中的节点701的字体颜色和填充颜色进行反色处理,并且与所选中的节点701没有依赖关系的节点706和707被淡化。应理解,这仅仅是强调显示所选中的节点701以及与节点701有依赖关系的节点702-705的方式的一种示例,还可以采用任何其他合适的方式来进行强调显示,例如,放大要强调显示的节点、向要强调显示的节点添加预定义的背景颜色等等。由此,可视化表示700B可以有助于用户更清楚地观察自己感兴趣的电子表格的页,而避免受到用户不感兴趣的信息的干扰。这在电子表格的规模较大时尤其是有利的。
根据一个实施例,图7A的可视化表示700A中的节点可以被逐级展开至其子孙节点(即,层级类型更低的节点)。图7C示出了展开节点701后的可视化表示700C。可视化表示700C可以是响应于接收到展开可视化表示700A或700B中的节点701的输入而显示的。展开节点701的输入可以是单击节点701的输入、双击节点701的输入或者对指示展开节点701的图标(例如,文字、图形、选中节点701后弹出的菜单中的选项等)的选中等。如图7C所示,节点701被展开为它的子节点711和712,节点711和712用矩形示出,以表示它们的层级类型不同于节点701-707。例如,节点711和712的层级类型可以是表。还在可视化表示700C中显示了节点711和节点712的语义信息“2014年盈利预测”和“2015年盈利预测”,它们例如是分别与节点711和712对应的表的标题。此外,节点701与其他节点之间的依赖关系也被替换为节点711和712与其他节点之间的依赖关系。还可以显示节点711与节点712之间的依赖关系,例如图7C中节点711和712之间的箭头可以表示节点712依赖于节点711。应理解,虽然在图7C中示出了将层级类型为页的节点701展开至它的两个子节点——表节点711和712,但是本发明不限于此,还可以响应于接收到展开可视化表示700A或700B中的节点701的输入而显示节点701的其他层级的子孙节点,例如层级类型为行的子孙节点以及这些子孙节点与其他层级类型为页的节点之间的依赖关系等。
根据一个实施例,还可以响应于接收到收起电子表格的层级的可视化表示700C中的节点711或712的输入而显示可视化表示700A。例如,收起节点711的输入可以是单击节点711的输入、双击节点711的输入或者对指示收起节点711的图标(例如,文字、图形、选中节点711后弹出的菜单中的选项等)的选中等。具体而言,可视化表示700C可以被更新以隐藏节点711和712、节点711和712与其他节点702-707之间的依赖关系以及节点711和712之间的依赖关系,并显示节点711和712的父节点701以及节点701与其他节点702-707之间的依赖关系。由此,在按层级展开可视化表示700A中的节点之后,还可以按层级收起展开后的子孙节点,从而方便用户根据自己的需要查看任何层级的信息。
图8A-图8C示出了根据本公开的一些实施例的示例性的电子表格的层级的可视化表示。为了清楚起见,未示出与这些可视化表示对应的电子表格。在图8A的可视化表示800A中,显示了层级结构中的所在层级的层级类型为页的节点801、节点801所依赖的与层级结构中的其他页节点的部分子孙节点(或全部子孙节点)对应的第一组节点811-814以及依赖于节点801的与层级结构中的其他页节点的部分子孙节点(或全部子孙节点)对应的第二组节点821-826,还用箭头显示了节点801与第一组节点811-814和第二组节点821-826之间的依赖关系。根据一个实施例,图8A的可视化表示800A可以是响应于接收到可视化与电子表格中的一个页对应的节点801的请求而显示的。例如,该请求可以是对指示可视化层级类型为页的节点801的图标(例如,文字、按钮或图形等)的选择(例如,单击、双击、轻扫、长按(对于具有触敏表面的显示设备而言)等)或者可以是可视化图7A所示的可视化表示700A中的节点701的输入(例如,单击、双击等)。如图8A所示,在可视化表示800A中,节点801、811-814和821-826的语义信息(例如,页的名称、行或列的标签等)也被显示在相应的节点上。例如,节点811-814和821-826可以是比页的层级低的任何层级的节点,例如它们的层级类型可以是节、表、行、列等。在图8A中为了清楚起见,用相同的格式显示了节点801、811-814和821-826,但是应当理解在可视化表示800A中可以用不同的显示格式(例如,填充颜色、填充图案、节点形状、节点大小等)来表示属于电子表格中的不同的页的节点,以及用不同的节点显示格式(例如,填充颜色、填充图案、节点形状、节点大小等)来表示节点的不同的层级类型。
在一个实施例中,响应于确定节点801所依赖的与电子表格中的其他页节点的部分子孙节点对应的第一组节点的数量超过第一阈值(例如,10、20等),可以隐藏或折叠第一组节点中的部分节点,从而使第一组节点中所显示的节点不超过第一阈值;以及响应于确定依赖于节点801的与电子表格中的其他页节点的部分子孙节点对应的第二组节点的数量超过第二阈值(例如,10、20等),可以隐藏或折叠第二组节点中的部分节点,从而使第二组节点中所显示的节点不超过第二阈值。可以基于任何合适的准则来选择要隐藏或折叠的节点。例如,被隐藏或折叠的节点可以是依赖关系较少的节点、在电子表格中位置靠后的节点、所对应的单元格的数目较少的节点等等。由此,尤其是在电子表格规模较大、依赖关系较为复杂的情况下,能够简化可视化表示,隐藏可能不太重要的信息。
在节点801中显示了三角形851,以指示该节点801可以被进一步展开至其子孙节点(即,层级类型更低的节点)。三角形851是示例性的,还可以使用其他任何合适的文字、图形、图标、按钮等来向用户指示可以进一步展开节点801。
图8B示出了展开节点801后的可视化表示800B。可视化表示800B可以是响应于接收到展开可视化表示800A中的节点801的输入而显示的。展开节点801的输入可以是单击节点801的输入、双击节点801的输入或者对指示展开节点801的图标(例如,文字、诸如图8A中的三角形851之类的图形、选中节点801后弹出的菜单中的选项等)的选中等。如图8B所示,节点801被展开为它的子节点831和832。例如,节点831和832的层级类型可以是表(或节)。还可以在可视化表示800B中显示节点831和节点832的语义信息“2014年盈利预测”和“2015年盈利预测”,它们例如是分别与节点831和832对应的表的标题。此外,节点801与其他节点之间的依赖关系也被替换为节点831和832与其他节点之间的依赖关系。还可以显示节点831和832之间的依赖关系,例如,可视化表示800B中可以包括从节点831指向节点832的箭头以表示节点832依赖于节点831。应理解,虽然在图8B中示出了将层级类型为页的节点801展开至它的两个子节点——表节点831和832,但是本发明不限于此,还可以响应于接收到展开可视化表示800A中的节点801的输入而显示节点801的其他层级的子孙节点,例如层级类型为行的子孙节点以及这些子孙节点与其他节点之间的依赖关系等。应注意,在可视化表示800B中,三角形851的形状可以相对于图8A被旋转,以指示节点801已经被展开。根据一个实施例,以使得节点831和832在可视化表示800B中的相对位置与分别和节点831、832对应的一个或多个单元格(表)在电子表格中的相对位置一致的方式来显示节点831和832。例如,在电子表格中与节点831对应的表在与节点832对应的表的上方,因此可以在可视化表示800B中将节点831显示在节点832的上方。应理解,还可以将节点831显示在节点832的左方或左上方等。
根据一个实施例,还可以响应于接收到收起电子表格的层级的可视化表示800B中的节点801的输入而显示可视化表示800A。例如,收起节点801的输入可以是单击节点801的输入、双击节点801的输入或者对指示收起节点801的图标(例如,文字、诸如三角形851之类的图形、选中节点801后弹出的菜单中的选项等)的选中等。具体而言,响应于确定节点801所在层级的层级类型不是单元格,可视化表示800B被更新以隐藏节点831和832及这两个节点之间的依赖关系、与节点831和832有依赖关系的其他节点811-814、821-826以及节点831和832与其他节点811-814、821-826之间的依赖关系,并显示节点831和832的父节点801、与节点801有依赖关系的其他节点811-814、821-826以及节点801与其他节点811-814、821-826之间的依赖关系。应理解,虽然此处示出的与节点801有依赖关系的其他节点以及与节点831、832有依赖关系的其他节点都是节点811-814、821-826,但是它们可以是不同的。例如,如果与节点801有依赖关系的其他节点以及与节点831、832有依赖关系的其他节点的数目超过了上文所述的第一阈值或第二阈值,可以隐藏或折叠部分节点,而在仅显示节点801的情况下,被隐藏或折叠的节点可能与在显示节点831和832的情况下有所不同,从而使得在可视化表示800A中示出的与节点801有依赖关系的其他节点可能与在可视化表示800B中示出的与节点831、832有依赖关系的其他节点不同。
如图8B所示,在节点831中同样显示了三角形,以指示该节点831可以被进一步展开至其子孙节点(即,层级类型更低的节点)。
图8C示出了展开节点831后的可视化表示800C。可视化表示800C可以是响应于接收到展开可视化表示800B中的节点831的输入而显示的。展开节点831的输入可以是单击节点831的输入、双击节点831的输入或者对指示展开节点831的图标(例如,文字、诸如节点831中的三角形之类的图形、选中节点831后弹出的菜单中的选项等)的选中等。如图8C所示,节点831被展开为它的子节点。例如,这些子节点的层级类型可以是行(或列)。还可以在可视化表示800C中显示这些子节点的语义信息“担保费收入”、“利息及手续费净收入”、“营业收入小计”、“营业支出小计”、“营业利润”和“利润总额”,它们例如是分别与这些子节点对应的行的行标签。此外,节点831与其他节点之间的依赖关系也被替换为这些子节点与其他节点之间的依赖关系。同时,可以显示这些子节点内部的依赖关系,例如,可视化表示800C中可以包括从“营业收入小计”、“营业支出小计”指向“营业利润”的箭头,以表示营业利润依赖于“营业收入小计”、“营业支出小计”。此外,可视化表示800C中还可以包括从“担保费收入”指向“2015年盈利预测”832的箭头,以表示2015年盈利预测依赖于2014年盈利预测中的担保费收入。应理解,虽然在图8C中示出了将层级类型为表的节点831展开至它的六个层级类型为行的子节点,但是本发明不限于此,还可以响应于接收到展开可视化表示800B中的节点831的输入而显示节点831的其他层级的子孙节点,例如层级类型为单元格或块的子孙节点以及这些子孙节点与其他节点之间的依赖关系等。根据一个实施例,以使得节点831的所显示的子孙节点在可视化表示800C中的相对位置与分别和节点831的子孙节点中的每个子孙节点对应的一个或多个单元格(行)在电子表格中的相对位置一致的方式来显示这些子孙节点。
根据一个实施例,还可以响应于接收到收起电子表格的层级的可视化表示800C中的节点831的输入而显示可视化表示800B。这个过程与上文参考图8B描述的收起节点801的过程类似,在此不再赘述。应理解,在可视化表示800C中还可以显示节点831的子节点之间的依赖关系,并且响应于接收到收起可视化表示800C中的节点831的输入,还可以隐藏这些子节点之间的依赖关系。
图9示出了根据本公开的一些实施例的示例性的电子表格的层级的可视化表示。在图9的可视化表示900中,显示了层级结构中的所在层级的层级类型为页的节点901和902、与节点901有依赖关系的与层级结构中的其他页节点的部分子孙节点(或全部子孙节点)对应的第三组节点921-926以及与节点902有依赖关系的与层级结构中的其他页节点的部分子孙节点(或全部子孙节点)对应的第四组节点911-913,还用箭头显示了节点901与第三组节点921-926之间的依赖关系以及节点902与第四组节点911-913之间的依赖关系,还可以显示节点901和902之间的依赖关系或者节点901和902各自的子节点内部或者之间的依赖关系。根据一个实施例,图9的可视化表示900可以是响应于接收到可视化与电子表格中的第一页对应的节点901和与第二页对应的节点902的请求而显示的。例如,该请求可以是对指示可视化节点901和902的图标(例如,文字、按钮或图形等)的选择(例如,单击、双击、轻扫、长按(对于具有触敏表面的显示设备而言)等)或者可以是可视化图7A所示的可视化表示700A中的节点701和703的输入(例如,对这两个节点的同时选中等)。如图9所示,在可视化表示900中,节点901-902、911-913和921-926的语义信息也被显示在相应的节点上。例如,节点911-913和921-926可以是比页的层级低的任何层级的节点,例如它们的层级类型可以是节、表、行、列等。在图9中为了清楚起见,用相同的格式显示了节点901-902、911-913和921-926,但是应当理解在可视化表示900中可以用不同的显示格式(例如,填充颜色、填充图案、节点形状、节点大小等)来表示属于电子表格中的不同的页的节点,以及用不同的节点显示格式(例如,填充颜色、填充图案、节点形状、节点大小等)来表示节点的不同的层级类型。应注意,虽然图9中示出了节点901所依赖的一个节点921,但是还可以显示节点901所依赖的其他节点、或依赖于节点901的其他节点。另外,虽然为了清楚起见,图9中仅示出了依赖于节点902的节点901,但是还可以显示依赖于节点902的或节点902所依赖的其他层级类型为页的节点和/或其子孙节点。可视化表示900还可以显示节点901的(部分或全部)子孙节点、节点902的(部分或全部)子孙节点以及节点901的子孙节点与节点902的子孙节点之间的依赖关系。例如,可视化表示900可以包括从节点902的子孙节点“合计”到节点901的子孙节点“营业收入小计”的箭头,以表示节点“营业收入小计”依赖于节点“合计”。应理解,虽然图9中显示了节点901的子节点931、932和节点931的子节点以及节点902的子节点941、942和节点941的子节点,但是这并不是必须的。根据一个实施例,可以响应于接收到可视化节点901和节点902的请求而仅显示节点901和902及其与其他节点的依赖关系,而不显示节点901和902的子孙节点。然后响应于接收到展开节点901和902的请求再显示节点931-932、941-942,接下来响应于接收到展开节点931的请求显示节点931的子孙节点和节点941的子孙节点。根据一个实施例,还可以响应于接收到可视化节点901和节点902的请求而直接显示可视化表示900,即,显示节点901的子节点931、932和节点931的子节点以及节点902的子节点941、942和节点941的子节点。
在一个实施例中,响应于确定与节点901有依赖关系的与电子表格中的其他页节点的部分子孙节点对应的第三组节点的数量超过一定阈值(例如,10、20等),可以隐藏或折叠第三组节点中的部分节点,从而使第三组节点中所显示的节点不超过该阈值;以及响应于确定与节点902有依赖关系的与电子表格中的其他页节点的部分子孙节点对应的第四组节点的数量超过一定阈值(例如,10、20等),可以隐藏或折叠第四组节点中的部分节点,从而使第四组节点中所显示的节点不超过该阈值。如上所述,可以基于任何合适的准则来选择要隐藏或折叠的节点。与参考图8A-图8C所描述的方式类似地,图9的可视化表示900中的各个节点也可以按层级展开或收起,在此不再赘述。应理解,可以按照与图9所示的可视化表示900类似的方式来显示电子表格中的三个或更多个页的可视化表示,本文在此不再赘述。
图10示出了根据本公开的一些实施例的示例性的电子表格的层级的可视化表示1000。在图10的可视化表示1000中,显示了层级结构中的所在层级的层级类型为行(或列)的节点1001、与该行包括的单元格对应的节点1031-1032以及与节点1031-1032中的每个节点有依赖关系的、与电子表格中的其他行中的单元格对应的第五组节点1011-1018和1021-1022,还用箭头显示了节点1031-1032与第五组节点1011-1018和1021-1022之间的依赖关系。根据一个实施例,图10的可视化表示1000可以是响应于接收到可视化与电子表格中的一个行对应的节点1001的请求而显示的。例如,该请求可以是对指示可视化节点1001的图标(例如,文字、按钮或图形等)的选择(例如,单击、双击、轻扫、长按(对于具有触敏表面的显示设备而言)等)或者可以是可视化图8C或图9所示的可视化表示中的语义信息为“营业利润”的节点的输入(例如,对该节点的单击、双击等)。如图10所示,在可视化表示1000中,节点1001、1031-1032、1011-1018和1021-1022的语义信息也被显示在相应的节点上。节点1011-1018和1021-1022可以是任何层级的节点,例如它们的层级类型可以是表、行、列、单元格等。在图10中为了清楚起见,节点1011-1018和1021-1022的层级类型都是单元格,并且用相同的格式显示了节点1001、1031-1032、1011-1018和1021-1022,但是应当理解在可视化表示1000中节点1011-1018和1021-1022也可以是其他任何层级类型,并且可以用不同的显示格式(例如,填充颜色、填充图案、节点形状、节点大小等)来表示属于电子表格中的不同的页的节点,以及用不同的节点显示格式(例如,填充颜色、填充图案、节点形状、节点大小等)来表示节点的不同的层级类型,还可以用不同的排列位置来对不同的节点进行排版。
在一个实施例中,响应于确定与节点1031和1032有依赖关系的与电子表格中的其他行中的单元格对应的第五组节点的数量超过一定阈值(例如,10、20等),可以隐藏或折叠第五组节点中的部分节点,从而使第五组节点中所显示的节点不超过该阈值。如上所述,可以基于任何合适的准则来选择要隐藏或折叠的节点。与参考图8A-图8C所描述的方式类似地,图10的可视化表示1000中的各个节点也可以按层级展开或收起,在此不再赘述。
图11A-图11B示出了根据本公开的一些实施例的示例性的电子表格的层级的可视化表示。在图11A的可视化表示1100A中,显示了层级结构中的所在层级的层级类型为单元格的节点1101以及与节点1101有依赖关系的其他节点1102-1105。虽然为了清楚起见,图11A的可视化表示1100A仅显示了节点1101所依赖的节点,但是应理解,还可以显示依赖于节点1101的节点。根据一个实施例,图11A的可视化表示1100A可以是响应于接收到可视化与电子表格中的一个单元格对应的节点1101的请求而显示的。例如,该请求可以是对指示可视化节点1101的图标(例如,文字、按钮或图形等)的选择(例如,单击、双击、轻扫、长按(对于具有触敏表面的显示设备而言)等)或者可以是对可视化表示中的语义信息为“2014年12月预测净利润”的节点进行可视化的输入(例如,对该节点的单击、双击等)。如图11A所示,在可视化表示1100A中,节点1101-1105的语义信息(例如,单元格的行标签和列标签的组合)也被显示在相应的节点上。节点1102-1105可以是层级类型为单元格的节点。
在一个实施例中,响应于确定与节点1101有依赖关系的其他节点的数量超过一定阈值(例如,10、20等),可以隐藏或折叠这些其他节点中的部分节点,从而使其他节点中所显示的节点不超过该阈值。
在节点1105中显示了三角形,以指示该节点1105(实际上是节点1105的依赖关系)可以被进一步展开。该三角形是示例性的,还可以使用其他任何合适的文字、图形、图标、按钮等来向用户指示可以进一步展开节点1105。
图11B示出了展开节点1105后的可视化表示1100B。可视化表示1100B可以是响应于接收到展开可视化表示1100A中的节点1105的输入而显示的。展开节点1105的输入可以是单击节点1105的输入、双击节点1105的输入或者对指示展开节点1105的图标(例如,文字、诸如图11A中的三角形之类的图形、选中节点1105后弹出的菜单中的选项等)的选中等。如图11B所示,节点1105被展开以显示与它有依赖关系的节点1111和1112,并且还用箭头示出节点1105与节点1111和1112之间的依赖关系。例如,节点1111和1112的层级类型可以是单元格。还可以在可视化表示1100B中显示节点1111和1112的语义信息,它们例如是分别与节点1111和1112对应的单元格的行标签和列标签的组合。根据一个实施例,显示与节点1105有依赖关系的其他节点包括显示与节点1105有依赖关系的所有节点中的部分节点(例如,预定数量的节点或者被识别为重要性高的节点等)。根据一个实施例,以使得节点1111和1112在可视化表示1100B中的相对位置与分别和节点1111、1112对应的单元格在电子表格中的相对位置一致的方式来显示节点1111和1112。例如,在电子表格中与节点1111对应的单元格在与节点1112对应的单元格的上方,因此可以在可视化表示1100B中将节点1111显示在节点1112的上方。应理解,还可以将节点1111显示在节点1112的左方或左上方等。根据一个实施例,可以类似地以使得节点1102-1105在可视化表示1100B中的相对位置与分别和节点1102-1105对应的单元格在电子表格中的相对位置一致的方式来显示节点1102-1105。
根据一个实施例,还可以响应于接收到收起电子表格的层级的可视化表示1100B中的节点1105的输入而显示可视化表示1100A。例如,收起节点1105的输入可以是单击节点1105的输入、双击节点1105的输入或者对指示收起节点1105的图标(例如,文字、诸如图11B中的三角形之类的图形、选中节点1105后弹出的菜单中的选项等)的选中等。具体而言,响应于确定节点1105所在层级的层级类型是单元格,可视化表示1100B被更新以隐藏节点1111和1112以及节点1105与节点1111和1112之间的依赖关系。
图12A-图12C示出了根据本公开的一些实施例的示例性的电子表格的层级的可视化表示。在图12A中,以层级目录的形式显示电子表格的层级结构,该层级目录可以被逐级展开或收起。图12A的可视化表示1200A可以包括层级类型为页的节点1210-1270,这些节点从上到下依次排列,并且它们的语义信息也被显示在可视化表示1200A中。符号1282示出了节点1210的层级类型为页,符号1281可以指示节点1210可以被展开。
图12B示出了节点1210被展开后的可视化表示1200B。根据一个实施例,可以响应于点击符号1281的输入,而显示可视化表示1200B。展开节点1210的输入还可以是单击节点1210的输入、双击节点1210的输入或者对选中(例如,单击、右键单击或长按)节点1210后弹出的菜单中的选项的选中等。可视化表示1200B可以显示节点1210的层级类型为表的子节点1211和1212。根据一个实施例,显示节点1210的子节点包括显示节点1210的子节点中的部分节点(例如,预定数量的节点或者所对应的单元格在电子表格中的位置靠前的节点等)。根据一个实施例,以使得节点1211和1212在可视化表示1200B中的相对位置与分别和节点1211、1212对应的单元格在电子表格中的相对位置一致的方式来显示节点1211和1212。例如,在电子表格中与节点1211对应的表在与节点1212对应的表的上方,因此可以在可视化表示1200B中将节点1211显示在节点1212的上方。
根据一个实施例,还可以响应于接收到收起节点1210的输入而显示可视化表示1200A。例如,收起节点1210的输入可以是单击节点1210的输入、双击节点1210的输入或者对指示收起节点1210的图标(例如,文字、诸如节点1210前面的符号1281之类的图形、选中节点1210后弹出的菜单中的选项等)的选中等。具体而言,响应于确定节点1210所在层级的层级类型不是单元格,可视化表示1200B被更新以隐藏节点1211-1212。此外,图12B中的节点1211和1212还可以被进一步展开。
图12C示出了节点1211被展开后的可视化表示1200C。根据一个实施例,可以响应于点击节点1211前的符号的输入,而显示可视化表示1200C。展开节点1211的输入还可以是单击节点1211的输入、双击节点1211的输入或者对选中(例如,单击、右键单击或长按)节点1211后弹出的菜单中的选项的选中等。可视化表示1200C可以显示节点1211的层级类型为行的子节点1213-1218。根据一个实施例,显示节点1211的子节点包括显示节点1211的子节点中的部分节点(例如,预定数量的节点或者所对应的单元格在电子表格中的位置靠前的节点等)。根据一个实施例,以使得节点1213-1218在可视化表示1200C中的相对位置与分别和节点1213-1218对应的单元格在电子表格中的相对位置一致的方式来显示节点1213-1218。例如,在电子表格中与节点1213对应的行在与节点1214对应的行的上方,因此可以在可视化表示1200C中将节点1213显示在节点1214的上方。
根据一个实施例,还可以响应于接收到收起节点1211的输入而显示可视化表示1200B。例如,收起节点1211的输入可以是单击节点1211的输入、双击节点1211的输入或者对指示收起节点1211的图标(例如,文字、诸如节点1211前面的符号之类的图形、选中节点1211后弹出的菜单中的选项等)的选中等。具体而言,响应于确定节点1211所在层级的层级类型不是单元格,可视化表示1200C被更新以隐藏节点1213-1218。
图13是示出根据本公开的一些实施例的示例性的电子表格的层级的可视化表示中的附加信息1300的示意图。根据一个实施例,响应于接收到查看可视化表示(例如,图7A至图12C示出的任一个可视化表示)中的一个节点的附加信息的输入,可以显示该节点的附加信息。例如,查看可视化表示中的一个节点的附加信息的输入可以是光标在该节点上的悬停、对该节点的选中等等。图13中示出了层级类型为表的一个节点A的附加信息,其中该节点A的语义信息是“2014年盈利预测”。
根据一个实施例,显示该节点A的附加信息包括显示与该节点A对应的一个或多个单元格(例如,这里是表)的缩略图1301。在缩略图1301中,示出了与该节点A对应的表中的单元格的数值以及这些单元格在电子表格中的行坐标和列坐标。还可以显示该节点A的语义信息,例如,如图13所示的表的名称1302“2014年盈利预测”。附加信息还可以包括该节点A的目录1303(从层级结构中的根节点到该节点的路径上的所有节点)“财务报表/主表/2014年盈利预测”。例如,“财务报表”可以是工作簿的名称,而“主表”可以是该表所在的页的标题。附加信息还可以包括该节点A所依赖的外部节点(与其他页的一个或多个单元格对应的节点)1304、以及依赖该节点的外部节点(“2015年盈利预测”、“担保费收入”)、该节点A所对应的表包括的行1305以及该节点A所对应的表包括的列1306。应注意,在1303-1306中示出的节点都与该节点A具有隶属关系或依赖关系,并且这些节点以链接的形式示出。根据一个实施例,响应于接收到点击一个链接的输入,更新或新建可视化表示以对与该链接对应的一个或多个节点进行可视化。例如,响应于接收到点击链接“营业利润”,可以对具有语义信息“营业利润”的行进行可视化,例如可以显示如图10所示的可视化表示1000。根据一个实施例,还可以更新附加信息1300,以显示具有语义信息“营业利润”的节点的附加信息。如上所述,一个节点的附加信息不限于此,而是可以包括以下各项中的一个或多个:该节点与其他节点的计算关系(可以以公式的形式显示)、与该节点对应的一个或多个单元格的生成时间、该节点的子节点的数量、与该节点对应的一个或多个单元格中的数值、该数值的单位、该数值所对应的时间点或时间段、与该节点对应的一个或多个单元格的格式、与该节点对应的一个或多个单元格在电子表格中的位置以及从层级结构中的根节点到该节点的路径等。
此外,本公开的实施例还涉及通过修改可视化表示来修改电子表格。图14是示出根据本公开的一些实施例的示例性的用于通过可视化表示来修改电子表格的方法的流程图1400。虽然图14例示了方法1400的2个步骤,但这仅仅是用于通过修改可视化表示来修改电子表格的方法的示意性流程,用于通过可视化表示来修改电子表格的方法1400还可以包括其他可能的步骤,或者可以包括上述两个步骤中任意步骤的组合步骤。
方法1400从步骤S1410开始,在步骤S1410处,接收对可视化表示的修改。可以对如图7A至图12C所示的任一个可视化表示进行修改。根据一个实施例,可以在图形用户界面中提供用户交互组件,使得用户可以对可视化表示进行任意修改。例如,用户执行以下操作中的一个或多个:修改可视化表示中的任意节点的元数据(例如,语义信息、运算符、附加信息等)、为节点添加子孙节点或祖先节点、为节点添加该节点所依赖的节点或依赖于该节点的节点、或者改变节点的隶属关系(例如,将本来隶属于节点B的节点A移动到节点C下方,以使得节点A成为节点C的子节点)等。根据一个实施例,还可以响应于用户添加节点或修改节点的操作而进一步提供对话框,以请求用户输入关于该节点的进一步信息,例如,与该节点对应的一个或多个单元格的数值、与该节点对应的一个或多个单元格的计算公式、与该节点对应的一个或多个单元格的显示格式等。
方法1400前进到步骤S1420,在步骤S1420处,修改电子表格,以使得修改后的电子表格与修改后的可视化表示对应。根据一个实施例,可以首先确定与该可视化表示对应的电子表格。例如,为电子表格生成的可视化表示可以与该电子表格相关联地存储,例如它们可以存储在相关位置处,或者它们可以具有相同的标识符等。根据一个实施例,可以基于对可视化表示中的层级结构、元数据和节点间的依赖关系中的一个或多个的修改来相应地修改电子表格。例如,响应于将图8A中的可视化表示800A的节点814的语义信息从“合计”修改为“投资收益合计”,可以将电子表格中与节点814对应的行的行标签修改为“投资收益合计”。又例如,响应于为图10中的可视化表示1000的节点1001添加新的子节点“2014年12月实际数”,可以在电子表格中与节点1001对应的行(或列)中与节点1031和1032对应的单元格右边(或下边)添加新的单元格。
如上所述,根据本公开的实施例对电子表格进行按层级的可视化,并且显示相关的语义信息和依赖关系等多个维度的信息,以使得用户可以更容易理解或更改电子表格的组织结构和逻辑关系。用户还可以按层级展开或收起可视化表示中的不同节点,从而可以有效地过滤掉用户不关注的信息,方便用户更容易找到所需要的信息。另外,通过可视化表示修改电子表格更加直观方便。
硬件实现
图15示出了根据本公开的一些实施例的其中可应用本公开的一般硬件环境。
参考图15,现在将描述作为可应用于本公开的各方面的硬件设备的示例的计算设备1500。计算设备1500可以是被配置成执行处理和/或计算的任何机器,可以是但不限于工作站、服务器、台式计算机、膝上型计算机、平板计算机、个人数字助理、智能电话、便携式相机或其任意组合。上述装置100可以整体或至少部分地由计算设备1500或类似的设备或***来实现。
计算设备1500可以包括能够经由一个或多个接口与总线1502连接或者与总线1502通信的元件。例如,计算设备1500可以包括总线1502、一个或多个处理器1504、一个或多个输入设备1506以及一个或多个输出设备1508。一个或多个处理器1504可以是任何类型的处理器,并且可以包括但不限于一个或多个通用处理器和/或一个或多个专用处理器(诸如专用处理芯片)。输入设备1506可以是能够向计算设备输入信息的任何类型的设备,并且可以包括但不限于鼠标、键盘、触摸屏、麦克风和/或遥控器。输出设备1508可以是能够呈现信息的任何类型的设备,并且可以包括但不限于显示器、扬声器、视频/音频输出终端和/或打印机。计算设备1500还可以包括非瞬态存储设备1510或与非瞬态存储设备1510连接,非瞬态存储设备1510可以是非瞬态的并且可以实现数据存储库的任何存储设备,并且可以包括但不限于盘驱动器、光学存储设备、固态存储装置、软盘、柔性盘、硬盘、磁带或任何其它磁性介质、紧凑型盘或任何其它光学介质、ROM(只读存储器)、RAM(随机存取存储器)、高速缓存存储器和/或任何其它存储器芯片或盒带、和/或计算机可以从其读取数据、指令和/或代码的任何其它介质。非瞬态存储设备1510可以是可从接口拆卸的。非暂态存储设备1510可以具有用于实现上述方法和步骤的数据/指令/代码。计算设备1500还可以包括通信设备1512。通信设备1512可以是能够与外部装置和/或与网络通信的任何类型的设备或***,并且可以包括但不限于调制解调器、网络卡、红外通信设备、无线通信装备和/或诸如蓝牙TM设备、802.11设备、WiFi设备、WiMax设备、蜂窝通信设施等的芯片组。
总线1502可以包括但不限于工业标准体系架构(ISA)总线、微通道体系架构(MCA)总线、增强型ISA(EISA)总线、视频电子标准协会(VESA)本地总线和***组件互连(PCI)总线。
计算设备1500还可以包括工作存储器1514,工作存储器1514可以是可以存储对处理器1504的工作有用的指令和/或数据的任何类型的工作存储器,并且可以包括但不限于随机存取存储器和/或只读存储器设备。
软件要素可以位于工作存储器1514中,包括但不限于操作***1516、一个或多个应用程序1518、驱动程序和/或其它数据和代码。用于执行上述方法和步骤的指令可以被包括在一个或多个应用程序1518中,并且上述装置100的部件可以通过处理器1504读取并执行一个或多个应用程序1518的指令来实现。更具体地,层级结构获得部件110可以例如由处理器1504在执行具有执行步骤S210的指令的应用程序1518时实现。元数据提取部件120可以例如由处理器1504在执行具有执行步骤S220的指令的应用程序1518时实现。依赖关系建立部件130可以例如由处理器1504在执行具有执行步骤S230的指令的应用程序1518时实现。可视化表示生成部件140可以例如由处理器1504在执行具有执行步骤S240的指令的应用程序1518时实现。软件要素的指令的可执行代码或源代码可以存储在非瞬态计算机可读存储介质(诸如上述(一个或多个)存储设备1510)中,并且可以在可能编译和/或安装的情况下被读入到工作存储器1514中。软件要素的指令的可执行代码或源代码也可以从远程位置下载。
本公开还涉及以下实施例。
实施例1、一种用于可视化电子表格的计算机实现的方法,所述方法包括:
获得电子表格的层级结构,其中所述层级结构包括一个或多个层级,所述一个或多个层级具有多个节点,其中每个层级具有至少一个节点并且具有相应的层级类型,每个节点对应于所述电子表格中的一个或多个单元格,其中所述层级结构还包括所述多个节点之间的隶属关系;
提取所述多个节点中的每个节点的元数据;
至少基于所述层级结构中的所述多个节点之间的计算关系来建立所述多个节点之间的依赖关系;以及
基于所述电子表格的层级结构、所述元数据和所述多个节点之间的依赖关系来生成所述电子表格的层级的可视化表示。
实施例2、根据实施例1所述的方法,其中建立所述多个节点之间的依赖关系还基于所述多个节点之间的隶属关系。
实施例3、根据实施例1所述的方法,其中每个节点的元数据包括描述该节点的具体含义的语义信息,并且当该节点被显示在所述电子表格的层级的可视化表示中时,所述语义信息也被显示在所述可视化表示中。
实施例4、根据实施例1所述的方法,其中每个节点的元数据包括用于该节点的计算公式中的运算符。
实施例5、根据实施例1所述的方法,其中,获得电子表格的层级结构包括以下中的一项或多项:
识别所述电子表格中的单元格的位置、内容和格式信息中的一项或多项,并且至少基于所述单元格的位置、内容和格式信息中的一项或多项来识别所述电子表格的层级结构;
接收由用户指定的层级结构。
实施例6、根据实施例1所述的方法,其中所述电子表格的所述一个或多个层级的层级类型包括以下中的一项或多项:工作簿、页、节、表、块、行、列、区间和单元格,并且其中获得电子表格的层级结构包括以下中的一项或多项:
在工作簿的每个页中检测标题,基于标题的位置、内容和格式信息中的一项或多项来确定标题的级别,并且基于标题的级别来将每个页划分为相应级别的节或表;
基于每个表的行和列的位置、内容和格式信息中的一项或多项来确定行和列的级别;
基于每个表中的行之间的相关性、列之间的相关性、行的级别、列的级别中的一项或多项将所述行和列划分为块;以及
基于每个行和列中的单元格之间的相关性将单元格划分为区间。
实施例7、根据实施例3所述的方法,其中,所述语义信息包括名称、标题、标签和批注中的一个或多个。
实施例8、根据实施例3所述的方法,其中,所述多个节点中的每个节点的语义信息是从与该节点对应的一个或多个单元格的文本内容中提取或生成的或者由用户定义的。
实施例9、根据实施例1所述的方法,其中,建立所述多个节点之间的依赖关系包括:
对于所述层级结构中的每个节点,确定该节点由另外的一个或多个节点计算得到,对于对应于该节点的所述一个或多个第一单元格中的每个第一单元格:
确定该第一单元格由对应于所述另外的一个或多个节点的一个或多个第二单元格中的第一组第二单元格计算得到;以及
建立如下依赖关系:与该第一单元格对应的第一节点及该第一节点的全部或部分祖先节点依赖于与所述第一组第二单元格各自对应的第一组第二节点及所述第一组第二节点的全部或部分祖先节点。
实施例10、根据实施例1所述的方法,还包括:针对每个节点存储该节点所在层级的层级类型、该节点的子节点以及该节点的元数据。
实施例11、根据实施例10所述的方法,还包括:针对每个节点存储该节点所依赖的节点。
实施例12、根据实施例3所述的方法,其中每个节点的元数据还包括以下附加信息中的一个或多个:该节点的计算公式、与该节点对应的一个或多个单元格的生成时间、该节点的子节点的数量、与该节点对应的一个或多个单元格中的数值、所述数值的单位、所述数值所对应的时间点或时间段、与该节点对应的一个或多个单元格的格式、与该节点对应的一个或多个单元格在电子表格中的位置以及从所述层级结构中的根节点到该节点的路径,并且所述方法还包括:
接收查看所述可视化表示中的一个节点的附加信息的输入;以及
响应于接收到所述输入,显示该节点的附加信息。
实施例13、根据实施例1所述的方法,还包括:
接收展开所述电子表格的层级的可视化表示中的第三节点的输入;
响应于确定第三节点所在层级的层级类型不是单元格,更新所述可视化表示以显示所述第三节点的子孙节点、所述多个节点中与所述第三节点的子孙节点有依赖关系的其他节点以及所述第三节点的子孙节点和所述其他节点之间的依赖关系;以及
响应于确定第三节点所在层级的层级类型是单元格,更新所述可视化表示以显示与第三节点有依赖关系的其他节点以及第三节点与所述其他节点之间的依赖关系。
实施例14、根据实施例13所述的方法,其中:
显示所述多个节点中与所述第三节点的子孙节点有依赖关系的其他节点包括显示所述多个节点中与所述第三节点的子孙节点有依赖关系的所有节点中的部分节点,并且
显示与第三节点有依赖关系的其他节点包括显示与第三节点有依赖关系的所有节点中的部分节点。
实施例15、根据实施例13所述的方法,其中所述第三节点的子孙节点包括第一多个子孙节点,并且其中显示所述第三节点的子孙节点包括以使得所述第一多个子孙节点在所述可视化表示中的相对位置与分别和所述第一多个子孙节点中的每个子孙节点对应的一个或多个单元格在所述电子表格中的相对位置一致的方式来显示所述第一多个子孙节点。
实施例16、根据实施例13所述的方法,其中更新所述可视化表示以显示与第三节点有依赖关系的其他节点包括:当其他节点的层级类型是单元格时,以使得所述其他节点在所述可视化表示中的相对位置与分别对应于所述其他节点的单元格在所述电子表格中的相对位置一致的方式来显示所述其他节点。
实施例17、根据实施例1所述的方法,其中生成所述电子表格的层级的可视化表示包括显示所述层级结构中的所在层级的层级类型为页的所有节点及所在层级的层级类型为页的所有节点之间的依赖关系。
实施例18、根据实施例1所述的方法,还包括:
响应于接收到可视化与所述电子表格中的一个页对应的节点的请求,显示该节点、该节点所依赖的与所述电子表格中的其他页的部分子孙节点对应的第一组节点、依赖于该节点的与所述电子表格中的其他页的部分子孙节点对应的第二组节点以及该节点与所述第一组节点和所述第二组节点之间的依赖关系。
实施例19、根据实施例18所述的方法,还包括:
响应于确定该节点所依赖的与所述电子表格中的其他页的部分子孙节点对应的第一组节点的数量超过第一阈值,隐藏或折叠第一组节点中的部分节点;以及
响应于确定依赖于该节点的与所述电子表格中的其他页的部分子孙节点对应的第二组节点的数量超过第二阈值,隐藏或折叠第二组节点中的部分节点。
实施例20、根据实施例1所述的方法,还包括:
响应于接收到可视化与所述电子表格中的第一页和第二页分别对应的第一节点和第二节点的请求,显示第一节点、与第一节点有依赖关系的与所述电子表格中的除了第一页和第二页之外的其他页的部分子孙节点对应的第三组节点及第三组节点与第一节点之间的依赖关系,以及显示第二节点、与第二节点有依赖关系的与所述电子表格中的除了第一页和第二页之外的其他页的部分子孙节点对应的第四组节点及第四组节点与第二节点之间的依赖关系。
实施例21、根据实施例20所述的方法,还包括显示第一节点的子孙节点、第二节点的子孙节点以及第一节点的子孙节点与第二节点的子孙节点之间的依赖关系。
实施例22、根据实施例1所述的方法,还包括:
响应于接收到可视化与所述电子表格中的一个行对应的节点的请求,显示与该行包括的单元格对应的各个节点以及与所述各个节点中的每个节点有依赖关系的、与所述电子表格中的其他行中的单元格对应的第五组节点及第五组节点与所述各个节点中的每个节点之间的依赖关系。
实施例23、根据实施例1所述的方法,其中生成所述电子表格的层级的可视化表示包括以层级目录的形式显示所述电子表格的层级结构。
实施例24、根据实施例1所述的方法,其中生成所述电子表格的层级的可视化表示包括:在所述可视化表示中用不同的显示格式来表示属于所述电子表格中的不同的页的节点,以及用不同的节点显示格式来表示节点的不同的层级类型。
实施例25、根据实施例1所述的方法,还包括:
响应于接收到选中所述可视化表示中的节点的输入,强调显示选中的节点以及与选中的节点有依赖关系的节点。
实施例26、根据实施例12所述的方法,其中显示该节点的附加信息包括显示与该节点对应的一个或多个单元格的缩略图。
实施例27、根据实施例12所述的方法,其中显示该节点的附加信息包括显示表示与该节点存在隶属关系或依赖关系的一个或多个其他节点的链接,并且所述方法还包括:
接收点击所述链接的输入;以及
更新或新建可视化表示以显示所述一个或多个其他节点。
实施例28、根据实施例13所述的方法,还包括:
接收收起所述电子表格的层级的可视化表示中的第三节点的输入;
响应于确定第三节点所在层级的层级类型不是单元格,更新所述可视化表示以隐藏所述第三节点的子节点、所述多个节点中与所述第三节点的子节点有依赖关系的第一组其他节点以及所述第三节点的子节点和所述第一组其他节点之间的依赖关系,并显示与所述第三节点有依赖关系的第二组其他节点及所述第三节点与第二组其他节点之间的依赖关系;以及
响应于确定第三节点所在层级的层级类型是单元格,更新所述可视化表示以隐藏与第三节点有依赖关系的其他节点以及第三节点与所述其他节点之间的依赖关系。
实施例29、根据实施例1所述的方法,还包括:
接收对所述可视化表示的修改;以及
修改所述电子表格,以使得修改后的电子表格与修改后的可视化表示对应。
实施例30、一种用于可视化电子表格的装置,包括:用于执行如实施例1-29中的任一项所述的方法的步骤的部件。
实施例31、一种用于可视化电子表格的设备,包括:
至少一个处理器;以及
至少一个存储设备,所述至少一个存储设备存储有指令,当所述指令由所述至少一个处理器执行时使得所述至少一个处理器执行如实施例1-29中的任一项所述的方法。
实施例32、一种非瞬态计算机可读存储介质,存储有指令,当所述指令由处理器执行时使得执行如实施例1-29中的任一项所述的方法。
从上述实施例中,本领域技术人员可以清楚地知晓,可以通过软件及必要的硬件来实现本公开,或者可以通过硬件、固件等来实现本公开。基于这种理解,可以部分地以软件形式来实现本公开的实施例。计算机软件可以存储在计算机的可读存储介质中,比如软盘、硬盘、光盘或闪存中。计算机软件包括使得计算机(例如个人计算机、服务站或网络终端)运行根据本公开的各个实施例的方法或其一部分的一系列指令。
已经这样描述了本公开,清楚的是,本公开可以以许多种方式变化。这些变化不被视为背离了本公开的精神和范围,而是对于本领域技术人员而言显而易见的所有这种修改意欲被包括在以下权利要求的范围中。
Claims (31)
1.一种用于可视化电子表格的计算机实现的方法,所述方法包括:
获得电子表格的层级结构,其中所述层级结构包括一个或多个层级,所述一个或多个层级具有多个节点,其中每个层级具有至少一个节点并且具有相应的层级类型,每个节点对应于所述电子表格中的一个或多个单元格,其中所述层级结构还包括所述多个节点之间的隶属关系;
提取所述多个节点中的每个节点的元数据;
至少基于所述层级结构中的所述多个节点之间的计算关系来建立所述多个节点之间的依赖关系,其中建立所述多个节点之间的依赖关系包括:
对于所述层级结构中的每个节点,当确定该节点由另外的一个或多个节点计算得到时,对于对应于该节点的所述一个或多个第一单元格中的每个第一单元格:
确定该第一单元格由对应于所述另外的一个或多个节点的一个或多个第二单元格中的第一组第二单元格计算得到;以及
建立如下依赖关系:与该第一单元格对应的第一节点及该第一节点的全部或部分祖先节点依赖于与所述第一组第二单元格各自对应的第一组第二节点及所述第一组第二节点的全部或部分祖先节点;以及
基于所述电子表格的层级结构、所述元数据和所述多个节点之间的依赖关系来生成所述电子表格的层级的可视化表示,其中在所述可视化表示中显示所述多个节点中的至少一部分节点的依赖关系。
2.根据权利要求1所述的方法,其中建立所述多个节点之间的依赖关系还基于所述多个节点之间的隶属关系。
3.根据权利要求1所述的方法,其中每个节点的元数据包括描述该节点的具体含义的语义信息,并且当该节点被显示在所述电子表格的层级的可视化表示中时,所述语义信息也被显示在所述可视化表示中。
4.根据权利要求1所述的方法,其中每个节点的元数据包括用于该节点的计算公式中的运算符。
5.根据权利要求1所述的方法,其中,获得电子表格的层级结构包括以下中的一项或多项:
识别所述电子表格中的单元格的位置、内容和格式信息中的一项或多项,并且至少基于所述单元格的位置、内容和格式信息中的一项或多项来识别所述电子表格的层级结构;
接收由用户指定的层级结构。
6.根据权利要求1所述的方法,其中所述电子表格的所述一个或多个层级的层级类型包括以下中的一项或多项:工作簿、页、节、表、块、行、列、区间和单元格,并且其中获得电子表格的层级结构包括以下中的一项或多项:
在工作簿的每个页中检测标题,基于标题的位置、内容和格式信息中的一项或多项来确定标题的级别,并且基于标题的级别来将每个页划分为相应级别的节或表;
基于每个表的行和列的位置、内容和格式信息中的一项或多项来确定行和列的级别;
基于每个表中的行之间的相关性、列之间的相关性、行的级别、列的级别中的一项或多项将所述行和列划分为块;以及
基于每个行和列中的单元格之间的相关性将单元格划分为区间。
7.根据权利要求3所述的方法,其中,所述语义信息包括名称、标题、标签和批注中的一个或多个。
8.根据权利要求3所述的方法,其中,所述多个节点中的每个节点的语义信息是从与该节点对应的一个或多个单元格的文本内容中提取或生成的或者由用户定义的。
9.根据权利要求1所述的方法,还包括:针对每个节点存储该节点所在层级的层级类型、该节点的子节点以及该节点的元数据。
10.根据权利要求9所述的方法,还包括:针对每个节点存储该节点所依赖的节点。
11.根据权利要求3所述的方法,其中每个节点的元数据还包括以下附加信息中的一个或多个:该节点的计算公式、与该节点对应的一个或多个单元格的生成时间、该节点的子节点的数量、与该节点对应的一个或多个单元格中的数值、所述数值的单位、所述数值所对应的时间点或时间段、与该节点对应的一个或多个单元格的格式、与该节点对应的一个或多个单元格在电子表格中的位置以及从所述层级结构中的根节点到该节点的路径,并且所述方法还包括:
接收查看所述可视化表示中的一个节点的附加信息的输入;以及
响应于接收到所述输入,显示该节点的附加信息。
12.根据权利要求1所述的方法,还包括:
接收展开所述电子表格的层级的可视化表示中的第三节点的输入;
响应于确定第三节点所在层级的层级类型不是单元格,更新所述可视化表示以显示所述第三节点的子孙节点、所述多个节点中与所述第三节点的子孙节点有依赖关系的其他节点以及所述第三节点的子孙节点和所述其他节点之间的依赖关系;以及
响应于确定第三节点所在层级的层级类型是单元格,更新所述可视化表示以显示与第三节点有依赖关系的其他节点以及第三节点与所述其他节点之间的依赖关系。
13.根据权利要求12所述的方法,其中:
显示所述多个节点中与所述第三节点的子孙节点有依赖关系的其他节点包括显示所述多个节点中与所述第三节点的子孙节点有依赖关系的所有节点中的部分节点,并且
显示与第三节点有依赖关系的其他节点包括显示与第三节点有依赖关系的所有节点中的部分节点。
14.根据权利要求12所述的方法,其中所述第三节点的子孙节点包括第一多个子孙节点,并且其中显示所述第三节点的子孙节点包括以使得所述第一多个子孙节点在所述可视化表示中的相对位置与分别和所述第一多个子孙节点中的每个子孙节点对应的一个或多个单元格在所述电子表格中的相对位置一致的方式来显示所述第一多个子孙节点。
15.根据权利要求12所述的方法,其中更新所述可视化表示以显示与第三节点有依赖关系的其他节点包括:当其他节点的层级类型是单元格时,以使得所述其他节点在所述可视化表示中的相对位置与分别对应于所述其他节点的单元格在所述电子表格中的相对位置一致的方式来显示所述其他节点。
16.根据权利要求1所述的方法,其中生成所述电子表格的层级的可视化表示包括显示所述层级结构中的所在层级的层级类型为页的所有节点及所在层级的层级类型为页的所有节点之间的依赖关系。
17.根据权利要求1所述的方法,还包括:
响应于接收到可视化与所述电子表格中的一个页对应的节点的请求,显示该节点、该节点所依赖的与所述电子表格中的其他页的部分子孙节点对应的第一组节点、依赖于该节点的与所述电子表格中的其他页的部分子孙节点对应的第二组节点以及该节点与所述第一组节点和所述第二组节点之间的依赖关系。
18.根据权利要求17所述的方法,还包括:
响应于确定该节点所依赖的与所述电子表格中的其他页的部分子孙节点对应的第一组节点的数量超过第一阈值,隐藏或折叠第一组节点中的部分节点;以及
响应于确定依赖于该节点的与所述电子表格中的其他页的部分子孙节点对应的第二组节点的数量超过第二阈值,隐藏或折叠第二组节点中的部分节点。
19.根据权利要求1所述的方法,还包括:
响应于接收到可视化与所述电子表格中的第一页和第二页分别对应的第一节点和第二节点的请求,显示第一节点、与第一节点有依赖关系的与所述电子表格中的除了第一页和第二页之外的其他页的部分子孙节点对应的第三组节点及第三组节点与第一节点之间的依赖关系,以及显示第二节点、与第二节点有依赖关系的与所述电子表格中的除了第一页和第二页之外的其他页的部分子孙节点对应的第四组节点及第四组节点与第二节点之间的依赖关系。
20.根据权利要求19所述的方法,还包括显示第一节点的子孙节点、第二节点的子孙节点以及第一节点的子孙节点与第二节点的子孙节点之间的依赖关系。
21.根据权利要求1所述的方法,还包括:
响应于接收到可视化与所述电子表格中的一个行对应的节点的请求,显示与该行包括的单元格对应的各个节点以及与所述各个节点中的每个节点有依赖关系的、与所述电子表格中的其他行中的单元格对应的第五组节点及第五组节点与所述各个节点中的每个节点之间的依赖关系。
22.根据权利要求1所述的方法,其中生成所述电子表格的层级的可视化表示包括以层级目录的形式显示所述电子表格的层级结构。
23.根据权利要求1所述的方法,其中生成所述电子表格的层级的可视化表示包括:在所述可视化表示中用不同的显示格式来表示属于所述电子表格中的不同的页的节点,以及用不同的节点显示格式来表示节点的不同的层级类型。
24.根据权利要求1所述的方法,还包括:
响应于接收到选中所述可视化表示中的节点的输入,强调显示选中的节点以及与选中的节点有依赖关系的节点。
25.根据权利要求11所述的方法,其中显示该节点的附加信息包括显示与该节点对应的一个或多个单元格的缩略图。
26.根据权利要求11所述的方法,其中显示该节点的附加信息包括显示表示与该节点存在隶属关系或依赖关系的一个或多个其他节点的链接,并且所述方法还包括:
接收点击所述链接的输入;以及
更新或新建可视化表示以显示所述一个或多个其他节点。
27.根据权利要求12所述的方法,还包括:
接收收起所述电子表格的层级的可视化表示中的第三节点的输入;
响应于确定第三节点所在层级的层级类型不是单元格,更新所述可视化表示以隐藏所述第三节点的子节点、所述多个节点中与所述第三节点的子节点有依赖关系的第一组其他节点以及所述第三节点的子节点和所述第一组其他节点之间的依赖关系,并显示与所述第三节点有依赖关系的第二组其他节点及所述第三节点与第二组其他节点之间的依赖关系;以及
响应于确定第三节点所在层级的层级类型是单元格,更新所述可视化表示以隐藏与第三节点有依赖关系的其他节点以及第三节点与所述其他节点之间的依赖关系。
28.根据权利要求1所述的方法,还包括:
接收对所述可视化表示的修改;以及
修改所述电子表格,以使得修改后的电子表格与修改后的可视化表示对应。
29.一种用于可视化电子表格的装置,包括:用于执行如权利要求1-28中的任一项所述的方法的步骤的部件。
30.一种用于可视化电子表格的设备,包括:
至少一个处理器;以及
至少一个存储设备,所述至少一个存储设备存储有指令,当所述指令由所述至少一个处理器执行时使得所述至少一个处理器执行如权利要求1-28中的任一项所述的方法。
31.一种非瞬态计算机可读存储介质,存储有指令,当所述指令由处理器执行时使得执行如权利要求1-28中的任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910977985.6A CN110728124B (zh) | 2019-10-15 | 2019-10-15 | 用于可视化电子表格的方法、装置、设备及存储介质 |
PCT/CN2020/089617 WO2021073076A1 (zh) | 2019-10-15 | 2020-05-11 | 用于可视化电子表格的方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910977985.6A CN110728124B (zh) | 2019-10-15 | 2019-10-15 | 用于可视化电子表格的方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110728124A CN110728124A (zh) | 2020-01-24 |
CN110728124B true CN110728124B (zh) | 2021-01-08 |
Family
ID=69221294
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910977985.6A Active CN110728124B (zh) | 2019-10-15 | 2019-10-15 | 用于可视化电子表格的方法、装置、设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110728124B (zh) |
WO (1) | WO2021073076A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110728124B (zh) * | 2019-10-15 | 2021-01-08 | 深圳逻辑汇科技有限公司 | 用于可视化电子表格的方法、装置、设备及存储介质 |
CN113496119B (zh) * | 2020-03-20 | 2024-06-21 | 北京庖丁科技有限公司 | 抽取表格中的元组数据的方法、电子设备和计算机可读介质 |
CN111966683B (zh) * | 2020-08-14 | 2024-07-16 | 北京致远互联软件股份有限公司 | 可视化表单图谱建立方法、装置、电子设备及存储介质 |
CN112200822A (zh) * | 2020-10-28 | 2021-01-08 | 广东南方数码科技股份有限公司 | 表格重建方法、装置、计算机设备及存储介质 |
CN113420537B (zh) * | 2021-06-22 | 2023-01-31 | 平安科技(深圳)有限公司 | 电子表格数据处理方法、装置、设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106339365A (zh) * | 2016-08-26 | 2017-01-18 | 深圳市永兴元科技有限公司 | 一种报表管理方法 |
CN107257968A (zh) * | 2015-02-27 | 2017-10-17 | 微软技术许可有限责任公司 | 发现电子表格中的独特公式集 |
CN107544806A (zh) * | 2017-09-04 | 2018-01-05 | 江苏中威科技软件***有限公司 | 可视化表单绘制方法 |
WO2019177264A1 (ko) * | 2018-03-14 | 2019-09-19 | 마인드서프 주식회사 | 멀티레이어 기반의 네트워크 트래픽 시각화 분석 방법 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6976212B2 (en) * | 2001-09-10 | 2005-12-13 | Xerox Corporation | Method and apparatus for the construction and use of table-like visualizations of hierarchic material |
US7698287B2 (en) * | 2004-09-30 | 2010-04-13 | Microsoft Corporation | Design of spreadsheet functions for working with tables of data |
US7548925B2 (en) * | 2005-01-24 | 2009-06-16 | Microsoft Corporation | Diagrammatic access and arrangement of data |
US8601383B2 (en) * | 2005-09-09 | 2013-12-03 | Microsoft Corporation | User interface for creating a spreadsheet data summary table |
CN101425007B (zh) * | 2007-10-29 | 2012-09-05 | 珠海金山软件有限公司 | 一种可结构化显示电子表格函数提示的方法 |
CN102591968B (zh) * | 2011-12-31 | 2016-03-16 | 深圳联友科技有限公司 | 一种扩展表格的实现方法及扩展引擎 |
JP6846356B2 (ja) * | 2015-10-23 | 2021-03-24 | オラクル・インターナショナル・コーポレイション | 表形式データから、多次元データベース環境に使用されるキューブスキーマを自動的に推論するためのシステムおよび方法 |
US10540434B2 (en) * | 2016-03-01 | 2020-01-21 | Business Objects Software Limited | Dynamic disaggregation and aggregation of spreadsheet data |
US10191897B1 (en) * | 2016-04-19 | 2019-01-29 | Workday, Inc. | Data flow view for a spreadsheet |
US10216823B2 (en) * | 2017-05-31 | 2019-02-26 | HarperDB, Inc. | Systems, methods, and apparatus for hierarchical database |
CN110728124B (zh) * | 2019-10-15 | 2021-01-08 | 深圳逻辑汇科技有限公司 | 用于可视化电子表格的方法、装置、设备及存储介质 |
-
2019
- 2019-10-15 CN CN201910977985.6A patent/CN110728124B/zh active Active
-
2020
- 2020-05-11 WO PCT/CN2020/089617 patent/WO2021073076A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107257968A (zh) * | 2015-02-27 | 2017-10-17 | 微软技术许可有限责任公司 | 发现电子表格中的独特公式集 |
CN106339365A (zh) * | 2016-08-26 | 2017-01-18 | 深圳市永兴元科技有限公司 | 一种报表管理方法 |
CN107544806A (zh) * | 2017-09-04 | 2018-01-05 | 江苏中威科技软件***有限公司 | 可视化表单绘制方法 |
WO2019177264A1 (ko) * | 2018-03-14 | 2019-09-19 | 마인드서프 주식회사 | 멀티레이어 기반의 네트워크 트래픽 시각화 분석 방법 |
Also Published As
Publication number | Publication date |
---|---|
WO2021073076A1 (zh) | 2021-04-22 |
CN110728124A (zh) | 2020-01-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110728124B (zh) | 用于可视化电子表格的方法、装置、设备及存储介质 | |
CN110738037B (zh) | 用于自动生成电子表格的方法、装置、设备及存储介质 | |
CN113342821B (zh) | 报表配置方法、装置、设备及计算机存储介质 | |
US10354419B2 (en) | Methods and systems for dynamic graph generating | |
CN106886418B (zh) | Html界面控件贴 | |
US9075787B2 (en) | Defining a reusable spreadsheet-function by extracting the function from a complex calculation in a spreadsheet document | |
US9760273B2 (en) | Overview axis having a different graph element type | |
JP5416983B2 (ja) | フォルダ管理装置、フォルダ管理方法およびフォルダ管理用プログラム | |
Zhao et al. | Facilitating discourse analysis with interactive visualization | |
CN104520877B (zh) | 手写绘制设备和方法 | |
JP2017010580A (ja) | 電子文書の検索方法及び電子文書検索のグラフィカル表示方法 | |
KR101330419B1 (ko) | 셀 내의 확장 가능 값 형식 | |
CN103677802B (zh) | 用于分析的改进的消费模型的***和方法 | |
KR20110120908A (ko) | 대화식 요약 테이블의 다중 조건 필터링 | |
Maguire et al. | Visual compression of workflow visualizations with automated detection of macro motifs | |
US7590933B2 (en) | Method for displaying an annotated file | |
US7605814B1 (en) | Method and tool for viewing data | |
US7757179B2 (en) | Display method, computer program product and computer system | |
US20240037325A1 (en) | Ability to add non-direct ancestor columns in child spreadsheets | |
JP4736089B2 (ja) | 情報処理装置ならびにファイルデータマージ方法およびファイル名称付与方法 | |
US20100138735A1 (en) | Document processing device | |
CN118152234B (zh) | 一种fpga架构资源可视化方法及*** | |
JP3988900B2 (ja) | 文書処理装置およびそのプログラム記憶媒体 | |
Khaddam et al. | Adapting UsiXML User Interfaces to Cultural Background | |
JP7287486B2 (ja) | 可視化データへの付箋の付与及び復元 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |