CN106537371B - 可视化建议 - Google Patents

可视化建议 Download PDF

Info

Publication number
CN106537371B
CN106537371B CN201580038405.7A CN201580038405A CN106537371B CN 106537371 B CN106537371 B CN 106537371B CN 201580038405 A CN201580038405 A CN 201580038405A CN 106537371 B CN106537371 B CN 106537371B
Authority
CN
China
Prior art keywords
visualization
data
existing
information
suggestion
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.)
Expired - Fee Related
Application number
CN201580038405.7A
Other languages
English (en)
Other versions
CN106537371A (zh
Inventor
B·E·兰普森
N·D·韦尔顿
C·J·格罗斯
P·哈努玛拉
A·G·卡尔森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN106537371A publication Critical patent/CN106537371A/zh
Application granted granted Critical
Publication of CN106537371B publication Critical patent/CN106537371B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/177Editing, e.g. inserting or deleting of tables; using ruled lines
    • G06F40/18Editing, e.g. inserting or deleting of tables; using ruled lines of spreadsheets

Abstract

本文描述了用于提供可视化建议的技术。为了提供可视化建议,可以接收可视化数据。可视化数据可以具有与其相关联的配置文件数据并且具有到与其相关联的数据源的至少一个数据连接。然后,可以识别与配置文件数据或数据连接相关的现有可视化信息,使得可以确定基于所识别的现有可视化信息的可视化建议。可视化建议随后可返回到客户端。

Description

可视化建议
背景技术
诸如电子表格应用的某些类型的应用的用户难以创建提供数据的有效可视化的报告。例如,电子表格应用的用户可以将工作簿与外部数据源连接来构建报告。在用户已经将他们感兴趣的数据添加到报告中后,为使他们的报告成为适合其他人消费的形式,用户仍要完成很多步骤。例如,用户可能需要对如何过滤报告中的数据做出决策。然而,这是很难的,因为用户可能需要知道要过滤的数据源的字段名称。另外,用户可能需要知道如何最佳地在报告中排列和显示数据。此外,用户可能需要知道如何最佳地将报告中的数据格式化以便显示。
因为这些决策和其它决策可能需要用户做出从而创建出有效的报告,所以创建好的报告的学习曲线对于一些用户而言可能是高的。结果,一些用户会打消开始一个报告的念头,或者最终是创建了对于他们的特定的数据集非最优的报告。
正是针对这些以及其它考虑呈现了本文所做的公开。
发明内容
本文描述了用于提供可视化建议的技术。为了提供可视化建议(例如,为了报告中的数据的可视化以及具有到与其相关联的数据源的一个或多个数据连接)。然后,可以识别与配置文件数据或数据连接相关的现有可视化信息,使得能够确定基于所识别的现有可视化信息的可视化建议。可视化建议随后可以返回到客户端。
应意识到,上述主题还可以实现为计算机控制的装置、计算机实现的过程、计算系统或实现为如计算机可读介质的制品。虽然本文呈现的技术主要公开在提供可视化建议的上下文中,但是本文公开的构思和技术同样还可能用于基于任何形式的可视化数据来提供另外形式的建议。这些以及其它各特征将通过对以下详细说明的理解和相关联的附图的阅览中显而易见。
提供该发明内容以便以简化的形式来引入下面的具体实施方式中进一步描述的概念的选择。该发明内容不旨在确定所要求保护的主题的关键特征或主要特征,也不旨在该发明内容用于限定所要求保护的主题的范围。此外,所要求保护的主题不限于解决在本公开的任意部分所提到的任意或全部缺点的实现方式。
附图说明
图1是示出本文所公开的示例性的操作环境和多个软件组件的方面的网络图;
图2是示出用于采集和存储现有可视化信息(prior visualizationinformation)的一个示例性的例程的方面的流程图;
图3是示出用于提供可视化建议的一个示例性的例程的方面的流程图;
图4A-4E是示出了根据本文呈现的多个配置的多个示例性的UI的方面的UI图;
图5是示出用于实现本文所公开的技术的示例性的计算机硬件和软件体系结构的计算机体系结构图;
图6是示出能够实现本文所呈现的技术的方面的分布式计算环境的图;以及
图7是示出能够实现本文所呈现的技术的方面的计算设备体系结构的计算机体系结构图。
具体实施方式
下面的详细说明涉及用于提供可视化建议的技术。可视化建议可以通过其图形UI或元件来实现。可视化建议可以至少部分地基于现有的可视化信息。现有的可视化信息可以利用先前数据可视化的结构而使得与没有辅助进行制作相比能够相对快速地制作具有类似数据连接的新的数据可视化。
如上文简要论述,一些用户可能在汇编数据的适当的或期望的可视化方面有困难,数据包括报告或数据报告。然而,使用本文所公开的技术的实现方式,可以提供可视化建议,使得可视化数据具有期望的结构。因此,本文所公开的技术的实现方式可能对于希望可视化数据的用户来说需要减少的努力。另外,使用本文所公开的技术,可以基于配置文件数据来实现跨用户群组的一致的数据可视化。虽然单独地列出,应当理解的是,根据本文所公开的技术的任何期望的实现方式,上文所述的结果可以单个地、独立地或者部分/完全组合的方式来实现。而且,通过本文所描述的技术的实现方式,附加的益处会变得明显。
虽然本文所描述的主题是在与计算机系统上的操作系统和应用程序的执行相结合而执行的程序模块的一般上下文中呈现的,但是本领域技术人员将认识到,可以与其它类型的程序模块相结合来实施其它的实现方式。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、组件、数据结构和其它类型的结构。而且,本领域技术人员将意识到,本文所描述的主题可以利用其它计算机系统配置来实现,包括手持式设备、多处理器系统、基于微处理器的或可编程的消费电子设备、微型计算机、主机型计算机等等。
在下面的详细说明中,参考了附图,附图构成其部分,并且其中通过示例说明示出具体的技术或示例。现在参考附图,将描述用于提供可视化建议的计算系统和方法的方面,在附图中相似的标记在多幅图中表示相似的元件。
现在转到图1,将提供关于本文所公开的示例性的操作环境和多个软件组件的细节。特别地,图1示出了用于提供可视化建议的系统100的方面。系统100包括与数据处理系统140可操作通信的一个或多个客户端计算机101A和101B(其在本文中可以单数形式称为“客户端101”和/或以复数形式称为“多个客户端101”)。客户端101可以是任何适合的计算机系统,包括但不限于,台式或膝上型个人计算机、平板计算设备、智能手机、其它类型的移动设备,或类似设备。
客户端101可以被配置成执行软件产品,诸如提供用于数据处理系统140中或者本地地在客户端计算机101中所存储或处理的信息的可视化数据120的创建、编辑和提交的用户接口102的应用103。在这方面,客户端101可以提供一个或多个形式的可视化数据120A且响应于此而接收结果121A。可视化数据120A可以是任何适当的形式,包括但不限于,电子表格、数据报告、图形文档或它们的组合或任何其它适合的形式。
可视化数据120A可以包括表示为查询或其它类似陈述的特定的数据连接,该特定的数据连接可以嵌入其中以便从一个或多个数据源141检索数据。可视化数据120A因此可以包括用于根据一些实现方式来可视化或以图形方式显示结果121A的指令。可视化数据120A还可以包括与结果121A相关的结构信息,例如描述布局、排序、分类或其它结构信息的信息。可视化数据120A还可以包括多个图形元件、或用于生成包含在其中的图形元件的指令,图形元件规定要显示的、来自数据源141的数据的一个或多个查询。
在一些配置中,可视化数据120和结果121可以被提交以便在网络(图1中未示出)上传输。网络可以包括计算机通信网络,诸如因特网,局域网(“LAN”)、广域网(“WAN”)或任何其它类型的网络,并且可被用来将可视化数据120提供到数据处理系统140以便进行本文所描述的数据连接和查询陈述的处理,以及随后返回结果121,结果可以适当地显示在UI102中。下面参考图2更全面地描述可视化数据120和结果121的提交。
如图1所示,配置文件数据124还可以提交给数据处理系统140。配置文件数据124可以包括上下文信息、标识信息、用户配置文件数据或任何其它适合的信息。配置文件数据124还可以包括与客户端101处的活动相关的元数据,例如,与用户之间的通信相关的活动、与特定用户群组相关的活动、或者能够对确定可视化建议125有用的其它活动。
根据至少一个配置,配置文件数据124包括与涉及到可视化数据的共同动作相关的信息。例如,配置文件数据124可以包括描述特定用户关于数据可视化的习惯的数据,包括诸如图表和曲线图的图形元件的优选形式、用于诸如日期格式和轴线格式的图形元素的优选的格式化选项,以及其它类似的信息。
根据另一配置,配置文件数据124包括描述客户端计算机101的用户的数据,诸如雇佣数据、雇员标识数据、雇员群/委员会数据以及其它类似的数据。另外,在一些实现方式中,配置文件数据124可以包括企业或公司信息。配置文件数据124还可以包括其它形式的数据,而不偏离本公开的范围。
如下文详述,配置文件数据124可以用于识别与用户创建(或试图创建)的可视化数据120B相关的用户或用户群组。响应于配置文件数据124、来自可视化数据120B的任意数据连接、和/或现有可视化信息142的分析,一个或多个可视化建议125可返回到客户端101。另外,在选择了任何可视化建议125时,可视化数据120B可更新以反映选择/变化且发送到数据处理系统140。此后,附加的可视化建议125连同基于可视化数据120B所描述的数据连接的相关联的结果121B一起可以提供给客户端101。下面参考图3-4E更全面地描述可视化建议125的提供。
如图1进一步示出的,数据处理系统140包括多个组件,多个组件被配置成执行如本文所描述的与处理和存储可视化数据120、配置文件数据124的处理、返回结果121和可视化建议125和可能其它功能相关的处理功能。例如,数据处理系统140可以被配置成接收并处理多个数据源141中的一个或多个(其在本文中以单数形式称为“数据源141”和/或以复数形式称为“多个数据源141”)的可视化数据120(或者其中所规定的任何数据连接、查询陈述等)。
一般地,数据源141接收可视化数据120,基于其中所包含的查询陈述/指令来执行一个或多个查询,以及返回结果121。结果121可以作为数据返回以便根据可视化数据120的指令、对象或其它属性来显示/可视化。此外,根据本文所呈现的技术的方面,现有可视化信息142可以填充有描述配置文件数据124、数据连接和/或与现有可视化信息142相关联的其它属性的先前的数据可视化和元数据。因此,可视化数据120的至少一部分可以作为现有可视化信息142连同与客户端101及其用户相关联的配置文件数据124一起存储。
注意的是,上述与数据源141和现有可视化信息142相关的行为可以根据一些实现方式来持续地执行。因此,随着接收到可视化数据120,图形元件、可视化信息等的一个或多个部分可以存储为现有可视化信息142,用于提供可视化建议125,如下文详述的。另外,现有可视化信息142可以包括基于可视化数据120而不直接归于存储的其它信息。例如,现有可视化信息142可以包括通过刮除用于可视化信息的现有文件所获得的数据。这可以通过如下文所述的可视化建议服务层143来促进,并且可以任何适当的方式来执行。
一般地,现有可视化信息142可以包括现有格式化信息、现有样式信息、现有布局信息、现有概要信息和/或现有图形元件信息。该现有信息可以基于可视化数据120或者所刮除的用于图形或可视化信息的文件来存储。
如图1所示,在一个配置中,数据处理系统140包括在其中执行的可视化建议服务层143。在一些实现方式中,可视化建议服务层143是软件例程或应用,并且可以单独地集成在每个数据源141(未示出)内。然而,在一些实现方式中,可视化建议服务层143还可以作为独立的可视化建议服务层(如图所示)来执行。
可视化建议服务层143被配置成处理可能包含可视化数据、过程配置文件数据124和/或过程可视化数据120B的文件以便存储在现有可视化信息142中。可视化建议服务层143还可以被配置成处理接收到的配置文件数据124和可视化数据120B,并且基于可视化数据120B、配置文件数据124和/或所存储的现有可视化信息142来确定可视化建议125。为了提供该功能,可视化建议服务层143可以将配置文件数据124中的信息、在可视化数据120B中所包含或规定的数据连接和/或现有可视化信息142比较来识别一个或多个可视化建议125。例如,可视化建议服务层143可以试图基于类似的数据连接、类似的查询陈述、类似的配置文件数据124或其它方面来将现有可视化数据120与可视化数据120B匹配。
如果找到匹配的或密切相关的现有可视化数据120A,则包括图表、曲线图、格式化、过滤、样式属性、字体或其它数据可视化的一个或多个数据可视化可以选择性地从现有可视化信息142中检索到且作为可视化建议125返回。随着用户选择或添加可视化建议125到可视化数据120B,可以根据现有的格式、属性和样式来构建更完整的可视化。
注意的是,虽然描述为可视化建议125返回到客户端以便显示为建议,但是可视化建议125可以改变且提供作为“智能缺省”。如本文所使用的,措辞“智能缺省”及其变体包括了基于配置文件数据124、可视化数据120A和/或现有可视化信息142来渲染的缺省数据可视化。可视化建议125因此还可以用作智能缺省。例如,用户可能选择添加新数据到透视表(PivotTable)或查询以便显示。此后,可视化建议服务层143可以引导透视表基于配置文件数据124以及利用预设聚合(例如,由于现有可视化信息142显示为平均值)而将所请求的数据添加到共同的位置处。因此,用户可能无需选择或添加单独的可视化建议125,而是自动地应用为智能缺省。下面参考图4A-4E来更全面地描述通过建议125和/或如上文所述的智能缺省来构建可视化数据120B。
现在参考图2,提供关于本文所呈现的通过数据处理系统140来处理配置文件数据124和可视化数据120以及采集和存储现有可视化信息142的技术的附加细节。特别地,图2是示出了用于采集和存储现有可视化信息142的一个示例性的例程200的方面的流程图。如图所示,方法200包括:在框202中,接收来自客户端计算机101A的可视化数据120A。例如,可视化数据120A包括导向至少一个数据源141的数据连接或查询陈述。因此,数据源141接收并处理可视化数据120A以产生结果121A。此后,客户端101A的UI 102A可以显示结果121A,如在可视化数据120A中所描述的。
另外,响应于接收到可视化数据120A,方法200还包括:在框204处,处理可视化数据120A和配置文件数据124。配置文件数据124可以采取上述任一种形式,并且可由数据源141采集以便存储为现有可视化信息142。在框206中,在处理可视化数据120A和配置文件数据124时,接收到的/处理的可视化数据120A和配置文件数据124的至少一部分被存储为现有可视化信息142。另外形式的可视化数据120可以如上文关于框202-206所描述进行接收和处理。此外,现有可视化信息142还可以包括不直接被接收作为可视化数据120A的信息,包括例如从具有一个或多个数据连接的现有文件中刮除的数据或信息。
一般地,可以根据任何可期望的特性来改变被存储作为现有可视化信息142的可视化数据120A或所刮除的数据的部分。例如,可以根据在可视化数据120A、现有文件或配置文件数据124中所描述的特定的数据连接来存储诸如图表、曲线图等单个的图形元件。此外,还可以存储图形元件的执行顺序或包含顺序。例如,如果与配置文件数据124和特定数据连接相关联的第一群组中的第一用户在将饼形图添加到可视化数据120中之前初始地为透视表添加了三个数据字段,则可视化建议125可以包括相同的事件序列以便更佳地辅助其它用户。应当理解的是,这些是一个可能的实现方式的非限制示例。现有可视化信息142的其它部分、序列、类型和/或形式是可能的。
如上所述,与客户端101相关的配置文件数据124和可视化数据120A的至少一部分被存储为现有可视化信息142。所存储的信息可以如下文所述用来基于新访问的/提交的可视化数据120B来生成可视化建议125。
现在转到图3,将提供关于本文所呈现的用来处理配置文件数据124和可视化数据120B以提供一个或多个可视化建议125的技术的附加细节。特别地,图3是示出了用于提供可视化建议125的一个示例性的例程300的方面的流程图。
方法300包括:在框302中,从客户端101B接收可视化数据120B。虽然描述为接收可视化数据120B,应当理解的是,方法300以及框302可适于通过文件的打开、文件的操纵、对可视化建议125的动作、对数据文件的动作或者任何其它通过客户端101、应用103和/或用户界面102的适合的行为来开始执行。因此,框302还可以包括检测数据源141处的访问、客户端101的初始化、应用103的初始化或者通过用户界面102的动作。在数据源141处的访问可以涵盖通过例如用户界面102或其它适合的数据访问方式访问存储在数据源141处的数据的请求。
方法300还包括:在框304处,采集配置文件数据124和/或处理可视化数据120B。例如,可以在可视化建议服务层143处接收到与客户端101或其用户相关的配置文件数据124。此后,在框306中,可视化建议服务层143能够分析配置文件数据124、可视化数据120B、通过用户界面102的动作和/或现有可视化信息142来确定可视化建议125。在框308中,可视化建议125被提供给客户端101。
一般地,确定可视化建议125可以基于在提供建议以及辅助用户构建可视化数据120B或数据报告时所期望的任何特定的粒度级。在基础级别上,确定可以包括:将来自可视化数据120B和现有可视化信息142的数据访问请求或数据连接匹配。
另外地,确定可以包括解释可视化数据120B的操纵,诸如例如解释格式、显示或其它属性的变化,以确定新的可视化建议125。作为可视化数据120B的操纵的非限制示例,用户可能之前已经添加了用于显示数据的透视表。根据在透视表中所显示的特定数据,可视化建议服务层143可以确定特定数据通常以优选的分级来显示且具有优选的数字格式。因此,优选的分级和数字格式可以作为可视化建议125返回。
此外,所述确定可以包括通过使用配置文件数据124来匹配或试图匹配雇员信息、群组信息、关系或其它连接以确定可视化建议125。所述确定还可以包括识别数据连接的排序或排列之间的相关、查询陈述的顺序或工作流或者可视化数据120B的其它属性。确定建议125的其它形式也是可用的,并且视为在本公开的范围内。
在框310中客户端101作用于可视化建议125上时,可视化建议服务层143可以在框312处应用可视化建议125且通过框304-312继续提供附加建议。另外,如果在框310处用户不是选择所提供的可视化建议125而是改变可视化数据120B,则可以通过框304-312来确定附加的或不同的建议。通过这种方式,与客户端101处的动作和可视化数据120B相关的许多不同的可视化建议125可以由可视化建议服务层143来提供,并且用户或雇员可以通过系统100更容易地准备不同形式的可视化数据120B。
图4A-4E是示出了根据本文所呈现的多个配置的多个示例性的UI的方面的UI图。关于图4A-4E所描述的UI可以类似于用于电子表格应用的电子表格界面来排列,电子表格应用对一个或多个数据源和/或数据处理系统具有访问权。其它UI和界面也是可应用的,并且因此,本公开不限于所示的特定形式,而是可应用于任何可用形式的界面。
转到图4A,将对用于提供可视化建议的用户界面102进行说明。如图4A所示,用户界面102包括基于到数据源141的至少一个数据连接的可视化数据401A-401C。可视化数据401以列显示。如进一步所示,渲染可视化建议UI元件404,其向用户表明至少一个可视化建议基于如下任一是可用的:可视化数据、数据连接、数据源访问、配置文件数据、可视化数据401的操纵或其它适合的属性。在选择了可视化建议UI元件404时,可视化建议125可被识别和渲染,如图4B-4E所示。
图4B的用户界面102A图示出可视化数据401,并且还包括基于现有可视化信息142所生成的可视化建议125A的图形表示。特别地,可视化建议125A包括基于上述的一个或多个属性而与可视化数据401匹配的数据分割过滤元件。注意的是,虽然可视化建议125A已经被图示为与过滤相关,附加操纵也可以应用,包括排序、分类和其它适合的操作。另外,可视化数据401的表格的特定字段排序和显示宽度也可以呈现为可视化建议125A。
图4C的用户界面102B包括可视化数据401,并且还包括从现有可视化信息142中检索到的可视化建议125B的图形表示。建议125B包括将基于新数据连接的图表元件423添加到基于可视化数据401和现有可视化信息142的雇员分布信息424中。注意的是,图表元件423可以基于可视化数据401和现有可视化信息142的属性而采取各种形式。例如,虽然特别地图示为饼形图,线性曲线图、绘图、条形图或其它图表元件也是能应用的。
注意的是,如本文所描述的任何可视化建议125还可以包括代表了可视化建议125的尺寸、格式和样式的“重影”渲染。因此,虽然建议125B显示为不同的渲染,但是重影渲染可以与可视化数据401“一致地”渲染以便在建议125B选择后更密切地表示用户界面102B的最后的外观和感觉。重影渲染是不同于可视化数据401的视觉渲染。例如,不是限制,重影渲染可以比可视化数据401较亮的阴影或不同于可视化数据401的颜色来呈现。重影渲染还可能通过使用不同于用来渲染可视化数据401的视觉属性的其它视觉属性来表明。
图4D的用户界面102C包括可视化数据401,并且还包括可视化建议125C的图形表示。可视化建议125C包括多种建议,包括以特定的数字格式、利用减小的列宽、以及按特定的排序对可视化数据401C的格式化以创建可视化数据401C’。应当理解,根据一些实现方式,在建议125C的渲染中所包含的任何可视化建议还可以由可视化建议服务层143来单独地提供。例如,特定的列宽可以呈现为不同于可视化建议125C的单个的建议125。另外,虽然以“短日期”格式呈现为401C’的数字格式,但是其它格式化建议也是能应用的。示例的格式化建议包括用于货币值或其它数字的逗号或句号的数字界定符、要显示的特定数量的小数位、所附的货币标记或其它字符以及其它适合的建议。
图4E的用户界面102D包括可视化数据401B、401C’,以及来自到雇员生产力信息的新的或已存在的数据连接的可视化数据401D。如图所示,由于可视化数据401D,已经提供了可视化建议125D,其建议将可视化数据401D变成具有更清楚地描绘其上所渲染的百分比的图形条元件443的401D’。
可以根据任何特定组的可视化数据401、现有可视化信息142和/或配置文件数据124来实现其它的可视化建议125。可视化建议125可以包括基于可视化数据401的缺省格式化或缺省数据字段以及匹配现有可视化信息142。此外,可以在现有可视化信息142中识别出分级以确定如何最佳地呈现可视化建议125内的信息的排序。其它可视化建议包括:将数据字段实现成行或列,按计数、和值、均值或其它函数来聚合数据字段,数字格式化、文本格式化、数据绘图或任何其它适当的形式的可视化建议也是可应用的。
如上文所述,通过数据连接和可视化数据120B的其它属性的分析,可以提供基于现有可视化信息142的不同的可视化建议。可视化建议可以基于先前所创建的可视化数据120A的格式化、样式、放置、排序和/或其它属性。建议125可以通过识别匹配的配置文件数据124、数据连接或其它相关来确定,并且可以被配置成利用先前可视化数据的结构来促进一致性以及提高新手用户(或甚至更高级用户)在创建数据报告或其它形式的可视化数据时的效率。
应当意识到,上文所描述的逻辑操作可以实现为(1)运行于计算系统上的计算机实现的动作或程序模块的序列,和/或(2)在计算系统内的互连的机器逻辑电路或电路模块。实现方式是取决于计算系统的性能和其它要求的选择问题。因此,本文所描述的逻辑操作多样地称为状态操作、结构设备、动作或模块。这些操作、结构设备、动作和模块可以用软件、用固件、用专用数字逻辑及其任意组合来实现。还应当意识到,可以执行比图中所示和本文所描述的更多或更少的操作。这些操作还可以按不同于本文所描述的顺序来执行。
图5示出了能够执行本文所描述的用于提供可视化建议的软件组件的设备的示例性的计算机体系结构500。因此,图5所示的计算机体系结构500示出了用于服务器计算机、移动电话、PDA、智能手机、台式计算机、上网本计算机、平板计算机和/或膝上型计算机的体系结构。计算机体系结构500可用于执行本文所呈现的软件组件的任意方面。
图5所示的计算机体系结构500包括中央处理器502(“CPU”)、包括随机存取存储器506(“RAM”)和只读存储器(“ROM”)508的系统存储器504以及将存储器504与CPU 502耦合的系统总线510。包含了例如在启动期间帮助在计算机体系结构500内的元件之间传输信息的基本例程的基本输入/输出系统存储在ROM 508中。计算机体系结构500还包括大容量存储设备512,其用于存储操作系统518以及包括但不限于可视化建议服务层143和现有可视化信息142的一个或多个应用程序。
大容量存储设备512通过与总线510连接的大容量存储控制器(未示出)来与CPU502连接。大容量存储设备512及其相关联的计算机可读介质提供了用于计算机体系结构500的非易失性存储。虽然在本文所包含的计算机可读介质的描述是指大容量存储设备,如硬盘或CD-ROM驱动器,本领域技术人员应当意识到,计算机可读介质可以是能够由计算机体系结构500访问的任何可用的计算机存储介质或通信介质。
通信介质可包括计算机可读指令、数据结构、程序模块、或调制数据信号中的其它数据如载波或其他传输机制,并且包括任何输送介质。术语“调制数据信号”是指其一个或多个特性以将信息编码到信号中的方式进行设定或改变的信号。通过示例而不是限制的方式,通信介质包括诸如有线网或直接连线连接的有线介质,以及诸如声波、RF、红外和其他无线介质的无线介质。上述任意的组合也应当包含在计算机可读介质的范围内。
通过举例而不是限制的方式,计算机存储介质可以包括以用于诸如计算机可读指令、数据结构、程序模块或其它数据的信息的存储的任何方法或技术实现的易失性和非易失性的、可移除和非可移除的介质。例如,计算机介质包括但不限于RAM、ROM、EPROM、EEPROM、闪速存储器或其它固态存储器技术、CD-ROM、数字多功能盘(“DVD”)、HD-DVD、BLU-RAY或其它光存储、磁盒、磁带、磁盘存储或其它磁存储设备、或者能够用于存储所需的信息且能够由计算机体系结构500访问的任何其它介质。为了权利要求的目的,短语“计算机存储介质”及其变化形式不包含波或信号本身和/或通信介质。
根据各种技术,计算机体系结构500可以通过诸如网络104的网络到远程计算机的逻辑连接而操作于网络环境中。计算机体系结构500可以通过与总线510连接的网络接口单元516而连接到网络104。应当意识到,网络接口单元516可以用来连接到其它类型的网络以及远程计算机系统。计算机体系结构500还包括用于接收和处理来自包括键盘、鼠标或电子指示笔(图5中未示出)的多个其它设备的输入的输入/输出控制器518。类似地,输入/输出控制器518可以提供输出给显示屏、打印机或其它类型的输出设备(图5中也未示出)。
应当意识到,本文所描述的软件组件在装载到CPU 502中且执行时可以将CPU 502和整个计算机体系结构500从通用计算系统变换成经定制而促进本文呈现的功能的专用计算系统。CPU 502可以由任意数量的晶体管或其它离散电路元件构成,这些晶体管和离散电路元件可以单独地或者统一地呈现任意数量的状态。更具体地,CPU 502可以响应于包含在本文公开的软件模块内的可执行指令而作为有限状态机来操作。这些计算机可执行指令可以通过规定CPU 502如何在状态之间转变而变换CPU 502,从而变换构成CPU 502的晶体管或其它离散硬件元件。
对本文呈现的软件模块编码也可以变换本文呈现的计算机可读介质的物理结构。在本说明书的不同的实现方式中,物理结构的具体的变换可以取决于各种因素。这些因素的示例可以包括但不限于用来实现计算机可读介质的技术,计算机可读介质是表征为主存储还是辅存储,等等。例如,如果计算机可读介质实现为基于半导体的存储器,则本文公开的软件可以通过变换半导体存储器的物理状态而编码到计算机可读介质上。例如,软件可以变换构成半导体存储器的晶体管、电容器、或其它离散电路元件的状态。软件还可以变换这些组件的物理状态从而在其中存储数据。
作为另一示例,本文所公开的计算机可读介质可以利用磁或光技术来实现。在这些实现方式中,当软件编码到其中时,本文所呈现的软件可以变换磁或光介质的物理状态。这些变换可以包括改变在给定的磁介质内的特定位置的磁特性。这些变换还可以包括改变在给定的光介质内的特定位置的物理特征或特性,以改变那些位置的光学特性。物理介质的其它变换是可能的,不偏离本说明书的范围,提供了上述示例仅为了利于该论述。
根据上述,应当意识到,许多类型的物理变换可以发生在计算机体系结构500内从而存储和执行本文呈现的软件组件。还应当意识到,计算机体系结构500可以包括其它类型的计算设备,包括手持式计算机、嵌入式计算机系统、个人数字助理以及本领域技术人员所知的其它类型的计算设备。还可想到,计算机体系结构500可以不包括图5所示的全部组件,可以包括图5中未明确示出的其它组件,或者可以使用完全不同于图5所示的体系结构。
图6示出了能够执行本文所述的用于提供可视化建议的软件组件的示例性的分布式计算环境600。因此,图6所示的分布式计算环境600能够用于提供本文关于系统100所描述的功能。因此,分布式计算环境600可用于执行本文呈现的软件组件的任意方面。
根据各个实现方式,分布式计算环境600包括操作于网络604上、与网络604通信或者作为网络604的部分而操作的计算环境602。网络604还可以包括各种访问网络。一个或多个客户端设备606A-606N(下文统一地和/或一般地称为“客户端606”)能够经由网络604和/或其它连接(图6中未示出)与计算环境602通信。在图示的配置中,客户端606包括计算设备606A,诸如膝上型计算机、台式计算机或其它计算设备;片式或平板式计算设备(“平板计算设备”)606B;移动计算设备606C,如移动电话、智能手机或其它移动计算设备;服务器计算机606D;和/或其它设备606N。应当理解的是,任意数量的客户端606能够与计算环境602通信。本文参考图5和图7描述了和图示出客户端606的两个示例的计算体系结构。应当理解的是,图示的客户端606和本文所图示和描述的计算体系结构是示例性的,而不应解释为以任何方式限制。
在图示的配置中,计算环境602包括应用服务器608、数据存储610以及一个或多个网络接口612。根据各个实现方式,应用服务器608的功能可以由作为网络604的部分执行或者与网络604通信的一个或多个服务器计算机来提供。应用服务器608能够托管各种服务、虚拟机、入口和/或其它资源。在图示的配置中,应用服务器608托管了用于托管应用或其它功能的一个或多个虚拟机614。根据各个实现方式,虚拟机614托管了用于提供本文所描述的用于提供可视化建议的功能的一个或多个应用和/或软件模块。应当理解的是,该实例是示例性的,而不应解释为以任何方式限制。应用服务器608还托管或提供对一个或多个Web入口、链接页面、Web站点和/或其它信息(“Web入口”)616的访问。
根据各个实现方式,应用服务器608还包括一个或多个邮箱服务618和一个或多个消息传递服务620。邮箱服务618可以包括电子邮件(“email”)服务。邮箱服务618还可以包括各种个人信息管理(“PIM”)服务,包括但不限于日历服务、通讯录管理服务、协作服务和/或其它服务。消息传递服务620可以包括但不限于即时消息传递服务、聊天服务、论坛服务和/或其它通信服务。
应用服务器608还可以包括一个或多个社交网络服务622。社交网络服务622可以包括各种社交网络服务,包含但不限于,用于共享或张贴状态更新、即时消息、链接、照片、视频和/或其它信息的服务;用于评论或显示对文章、产品、博客或其它资源的兴趣的服务;和/或其它服务。在一些技术中,社交网络服务622由如下提供或包含如下:FACEBOOK社交网络服务,LINKEDIN职业网络服务,MYSPACE社交网络服务,FOURSQUARE地理网络服务,YAMMER办公同事网络服务,等等。在其它技术中,社交网络服务622由其它可能或可能没有明确地表明为社交网络提供商的服务、站点和/或提供商来提供。例如,一些网站允许用户在例如阅读出版物、评论商品或服务、发布、协作、游戏等各种活动和/或背景下经由电子邮件、聊天服务和/或其它方式彼此交互。这些服务的示例包括但不限于来自华盛顿埃德蒙顿的微软公司的WINDOWS LIVE服务和XBOX LIVE服务。其它服务是可能的且可以想到。
社交网络服务622还可以包括评论、发博客和/或微博服务。这些服务的示例包括但不限于,YELP评论服务、KUDZU审阅服务、OFFICETALK企业微博服务、TWITTER消息传递服务、GOOGLE BUZZ服务和/或其它服务。应当意识到,上述服务列表不是穷尽的,而且为了简要起见在此没有提到若干的附加的和/或可替代的社交网络服务622。因此,上述技术是示例性的,而不应解释为以任何方式进行限制。
如图6所示,应用服务器608还能够托管其它服务、应用、入口和/或其它资源(“其它资源”)624。其它资源624可以包括但不限于,可视化建议服务层143和现有可视化信息142。因此,应当意识到,计算环境602能够提供本文所提供的用于提供可视化建议的本文公开的构思和技术与各种邮箱、消息传递、社交网络和/或其它服务或资源的整合。例如,本文所公开的用来提供可视化建议的构思和技术可以利用在社交网络中的朋友间共享的、在通过社交网络数据所识别的类的成员间所共享和/或其它通过社交网络数据所识别的可视化数据的结构。
如上所述,计算环境602可以包括数据存储610。根据各个实现方式,数据存储610的功能由操作于网络604上或者与网络604通信的一个或多个数据库来提供。数据存储610的功能还能够由被配置成托管用于计算环境602的数据的一个或多个服务器计算机来提供。数据存储610可以包括、托管或提供一个或多个真实的或虚拟的数据仓库626A-626N(下文统一地和/或一般地称为“数据仓库626”)。数据仓库626被配置成托管由应用服务器608所使用或创建的数据和/或其它数据。
计算环境602能够与网络接口612通信或者由网络接口612访问。网络接口612可以包括用于支持包括但不限于客户端606和应用服务器608在内的两个或更多个计算设备之间的通信的各种类型的网络硬件和软件。应当意识到,网络接口612还可以用来连接到其它类型的网络和/或计算机系统。
应当理解的是,本文所描述的分布式计算环境600能够为本文所描述的软件元件的任意方面提供能够被配置成执行本文公开的软件组件的任意方面的任意数量的虚拟计算资源和/或其它分布式计算功能。根据本文公开的构思和技术的各个实现方式,分布式计算环境600将在本文描述为服务的软件功能提供给客户端606。应当理解的是,客户端606可以包括真实的或虚拟的机器,包括但不限于服务器计算机、web服务器、个人计算机、移动计算设备、智能手机和/或其它设备。因此,本文所公开的构思和技术的各种技术使得被配置成访问分布式计算环境600的任何设备能够使用本文所描述的功能用于提供可视化建议。
现在转到图7,能够执行本文所描述的用于提供可视化建议的各种软件组件的计算设备的示例性的计算设备体系结构700。计算设备体系结构700能应用于部分地由于形状因数、无线连接能力和/或电池供电操作而促进移动计算的计算设备。在一些技术中,计算设备包括但不限于移动电话、平板式设备、片式设备、便携式视频游戏设备等。而且,计算设备体系结构700能应用于图6所示的任意客户端706。此外,计算设备体系结构700的方面可以能应用于传统的台式计算机、便携式计算机(例如,膝上型设备、笔记本设备、超级便携式设备和上网本)、服务器计算机和其它计算机系统,如本文参考图5所描述的。例如,下文所公开的单触摸和多触摸方面可应用于使用触摸屏的台式计算机或某种其它触摸使能设备,诸如触摸使能跟踪垫或触摸使能鼠标。
图7所示的计算设备体系结构700包括处理器702、存储器组件704、网络连接组件706、传感器组件708、输入/输出组件710和电力组件712。在图示的配置中,处理器702与存储器组件704、网络连接组件706、传感器组件708、输入/输出(“I/O”)组件710和电力组件712通信。虽然没有示出图7所示的各个组件之间的连接,该组件能够交互而实施设备功能。在一些技术中,组件被配置成经由一个或多个总线(未示出)通信。
处理器702包括中央处理器(“CPU”),其被配置成处理数据,执行一个或多个应用程序的计算机可执行指令,并且与计算设备体系结构700的其它组件通信从而执行本文所描述的各种功能。处理器702可以用来执行本文所呈现的软件组件的方面,尤其是那些至少部分地使用触摸使能输入的方面。
在一些技术中,处理器702包括图形处理单元(“GPU”),其被配置成加速CPU所执行的操作,包括但不限于,通过执行通用科学与工程计算应用所实施的操作,以及诸如高分辨率视频(例如,720P、1080P和更大)、视频游戏、三维(“3D”)建模应用等图形密集计算应用。在一些技术中,处理器702被配置成与分立的GPU(未示出)通信。在任何情况下,CPU和GPU可以依照协处理CPU/GPU计算模型来配置,其中应用的顺序的部分在CPU上执行,计算密集部分由GPU来加速。
在一些技术中,连同下文所描述的其它一个或多个组件一起,处理器702是片上系统(“SoC”)或者包含在SoC中。例如,SoC可以包括处理器702、GPU、一个或多个网络连接组件706以及一个或多个传感器组件708。在一些技术中,处理器702部分地利用封装上封装“PoP”集成电路封装技术来制作。而且,处理器702可以是单核或多核处理器。
处理器702可以依照来自英国剑桥的ARM HOLDINGS的可供认证的ARM体系结构来产生。可替代地,处理器702可依照x86体系结构来产生,例如可从加利福尼亚山景城的因特尔公司以及其它获得。在一些技术中,处理器702是可从加利福尼亚的圣地牙哥的QUALCOMM获得的SNAPDRAGON SoC、可从加利福尼亚的圣塔克拉拉的NVIDIA获得的TEGRA SoC、可从韩国首尔的SAMSUNG获得的HUMMINGBIRD SoC、可从德克萨斯州的达拉斯的德州仪器(TEXASINSTRUMENTS)获得的Open Multimedia Application Platform("OMAP")SoC、上述SoC中的任一个的定制版本或专有SoC。
存储器组件704包括随机存取存储器(“RAM”)714、只读存储器(“ROM”)716、集成存储存储器(“集成存储”)718和可移除存储存储器(“可移除存储”)720。在一些技术中,RAM714或其部分、ROM 716或其部分和/或RAM 714和ROM 716的某种组合集成到处理器702中。在一些技术中,ROM 716被配置成存储固件、操作系统或其部分(例如,操作系统核)和/或从集成存储718或可移除存储720装载操作系统核的引导加载程序。
集成存储718可以包括固态存储器、硬盘或固态存储器和硬盘的组合。集成存储718可以是钎焊到或以其它方式连接到逻辑板上,处理器702以及本文所描述的其它组件也可以连接到该逻辑板上。因此,集成存储718集成到计算设备中。集成存储718被配置成存储本文所描述的操作系统或其部分、应用程序、数据和其它软件组件。
可移除存储720可以包括固态存储器、硬盘或固态存储器和硬盘的组合。在一些技术中,可移除存储720被提供以取代集成存储718。在其它技术中,可移除存储720被提供作为附加的可选存储。在一些技术中,可移除存储720与集成存储718逻辑地组合而使得总可用存储可用且作为集成存储718和可移除存储720的总组合容量显示给用户。
可移除存储720被配置成插入可移除存储存储器槽(未示出)或其它机构,可移除存储720插入可移除存储存储器槽或其它机构且紧固到其上以利于可移除存储720能够借以与诸如处理器702的计算设备的其它组件通信的连接。可移除存储720可以嵌入各种存储器卡格式中,包括但不限于,PC卡、CompactFlash卡、记忆棒、安全数字(“SD”)、miniSD、microSD、通用集成电路板(“UICC”)(例如,订阅者身份模块(“SIM”)或通用SIM(“USIM”))、专有格式等等。
可以理解的是,存储器组件704中的一个或多个能够存储操作系统。根据各个技术,操作系统包括但不限于来自塞班公司的SYMBIAN OS、来自华盛顿雷德蒙顿的微软公司的WINDOWS MOBILE OS、来自微软公司的WINDOWS PHONE OS、来自微软公司的WINDOWS操作系统、来自加利福尼亚的帕罗奥图的惠普公司的PALM WEBOS、来自加拿大多伦多的Research in Motion Limited of Waterloo的BLACKBERRY OS、来自加利福尼亚的库比蒂诺的苹果公司的IOS以及来自加利福尼亚的山景城的谷歌公司的ANDROID OS。可想到其它操作系统。
网络连接组件706包括无线广域网组件(“WWAN组件”)722、无线局域网组件(“WLAN组件”)724以及无线个域网组件(“WPAN组件”)726。网络连接组件706利于与网络728之间的通信,网络可以是WWAN、WLAN或WPAN。虽然示出了单个网络728,但是网络连接组件706可促进与多个网络的同时通信。例如,网络连接组件706可以促进经由WWAN、WLAN或WPAN中的一个或多个与多个网络同时通信。
网络728可以是WWAN,诸如使用一个或多个移动远程通信技术来经由WWAN组件722提供语音和/或数据服务给使用计算设备体系结构700的计算设备的移动远程通信网络。移动远程通信技术可以包括但不限于全球移动通信系统(“GSM”)、码分多址(“CDMA”)ONE、CDMA2000、通用移动远程通信系统(“UMTS”)、长期演进(“LTE”)和世界微波接入互操作(“WiMAX”)。而且,网络728可以使用各种信道接入方法(其可以或者可以不由上述标准来使用),包括但不限于,时分多址(“TDMA”)、频分多址(“FDMA”)、CDMA、宽带CDMA(“W-CDMA”)、正交频分多路复用(“OFDM”)、空间分多址(“SDMA”)和类似方法。数据通信可以利用如下来提供:通用分组无线电服务(“GPRS”)、全局演进增强数据率(“EDGE”)、高速分组接入(“HSPA”)协议系列,包括高速下行链路分组接入(“HSDPA”)、增强上行链路(“EUL”)或另外所谓的高速上行链路分组接入(“HSUPA”)、演进的HSPA(“HSPA+”)、LTE、以及其它各种当前和未来的无线数据访问标准。网络728可被配置成利用上述技术的任意组合来提供语音和/或数据通信。网络728可被配置成适于依照未来代的技术来提供语音和/或数据通信。
在一些技术中,WWAN组件722被配置成提供双重多模式连接到网络728。例如,WWAN组件722可以被配置成提供连接到网络728,其中网络728经由GSM和UMTS技术来提供服务,或者经由技术的某种其它组合。可替代地,多个WWAN组件722可用来执行该功能,和/或提供附加功能来支持其它非兼容技术(即,不能由单个WWAN组件支持)。WWAN组件722可促进到多个网络(例如,UMTS网络和LTE网络)的类似的连接。
网络728可以是依照一个或多个电气与电子工程师协会(“IEEE”)802.11标准而操作的WLAN,诸如IEEE 802.11a、802.11b、802.11g、802.11n和/或未来的802.11标准(在本文统称为WI-FI)。还可以想到起草的802.11标准。在一些技术中,WLAN利用一个或多个无线WI-FI接入点来实现。在一些技术中,一个或多个无线WI-FI接入点是能够与WWAN连接的充当WI-FI热点的另一计算设备。WLAN组件724被配置成经由WI-FI接入点与网络728连接。这些连接可经由各种加密技术来确保,加密技术包括但不限于WI-FI保护接入(“WPA”)、WPA2、有线等价隐私(“WEP”)和类似技术。
网络728可以是依照红外数据联盟(“IrDA”)、BLUETOOTH、无线通用串行总线(“USB”)、Z-Wave、ZIGBEE或某其它短程无线技术来操作的WPAN。在一些技术中,WPAN组件726被配置成促进与诸如外围设备、计算机或其它计算设备的其它设备经由WPAN的通信。
传感器组件708包括磁力计730、环境光传感器732、接近传感器734、加速度计736、陀螺仪738和全球定位系统传感器(“GPS传感器”)740。可想到,诸如但不限于温度传感器或震动检测传感器的其它传感器也可以包含在计算设备体系结构700中。
磁力计730可以被配置成测量磁场的强度和方向。在一些技术中,磁力计730提供测量给存储在一个存储器组件704内的罗盘应用程序从而为用户提供参考系内的精确的方向,包括主要方向,北、南、东和西。可以对包括罗盘组件的导航应用程序提供类似的测量。可想到通过磁力计730所获得的测量的其它用途。
环境光传感器732被配置成测量环境光。在一些技术中,环境光传感器732提供测量给存储在一个存储器组件704内的应用程序从而自动地调节显示器(下面所述)的亮度从而补偿低光照环境和高光照环境。可想到通过环境光传感器732所获得的测量的其它用途。
接近传感器734被配置成在不直接接触的情况下检测靠近计算设备的物体或事物的存在。在一些技术中,接近传感器734检测用户的身体(例如,用户的面部)的存在且提供该信息给存储在存储器组件704中之一内的、使用接近信息来使能或禁止计算设备的某功能的应用程序。例如,电话应用程序可以响应于接收到接近信息而自动禁止触摸屏(下面说明),使得用户的面部不会在通话期间不利地结束通话或使能/禁止电话应用程序内的其它功能。接近传感器734所检测到的接近的其它用途可被想到。
加速度计736被配置成测量正确的加速度。在一些技术中,来自加速度计736的输出由应用程序用作控制应用程序的某功能的输入机制。例如,应用程序可以是视频游戏,其中字符、其部分或对象响应于经由加速度计736接收到的输入而移动或以其它方式操纵。在一些技术中,来自加速度计736的输出提供给应用程序以便用于在横向模式与纵向模式之间切换,计算坐标加速度,或者检测落差。可以想到加速度计736的其它用途。
陀螺仪738被配置成测量和维持方位。在一些技术中,来自陀螺仪738的输出由应用程序用作控制应用程序的某功能的输入机制。例如,陀螺仪738能够用于视频游戏应用或某其它应用的3D环境内的移动的精确识别。在一些技术中,应用程序使用来自陀螺仪738和加速度计736的输出来增强应用程序的某种功能的控制。可想到陀螺仪738的其它用途。
GPS传感器740被配置成接收来自GPS卫星的信号以用于计算位置。通过GPS传感器740计算的位置可由需要或受益于位置信息的任何应用程序使用。例如,通过GPS传感器740计算的位置可用于导航应用程序以提供从该位置到目的地的方向或者从目的地到该位置的方向。而且,GPS传感器740可以用于将位置信息提供给的基于外部位置的服务,诸如E911服务。GPS传感器740可以使用一个或多个网络连接组件706获得经由WI-FI、WIMAX和/或蜂窝三角测量技术所生成的位置信息以辅助GPS传感器740获得位置锁定。GPS传感器740还可用于辅助GPS(“A-GPS”)系统。
I/O组件710包括显示器742、触摸屏744、数据I/O接口组件(“数据I/O”)746、音频I/O接口组件(“音频I/O”)748、视频I/O接口组件(“视频I/O”)750和照相机752。在一些技术中,显示器742和触摸屏744组合。在一些技术中,数据I/O组件746、音频I/O组件748和视频I/O组件750中的两个或更多个被组合。I/O组件710可以包括被配置为支持下面所描述的各种接口的分立的处理器,或者可以包括内置于处理器702中的处理功能。
显示器742是被配置成以视觉形式呈现信息的输出设备。特别地,显示器742可以呈现图形用户接口(“GUI”)元件、文本、图像、视频、通知、虚拟按钮、虚拟键盘、消息传递数据、因特网内容、设备状况、时间、日期、日历数据、偏好、地图信息、位置信息以及任何其它能够以视觉形式呈现的信息。在一些技术中,显示器742是使用了任何有源或无源矩阵技术以及任何背光技术(如果使用)的液晶显示器(“LCD”)。在一些技术中,显示器742是有机发光二极管(“OLED”)显示器。可想到其它显示器类型。
触摸屏744是被配置成检测触摸的存在和位置的输入设备。触摸屏744可以是电阻触摸屏、电容触摸屏、表面声波触摸屏、红外触摸屏、光学成像触摸屏、分散信号触摸屏、声脉冲识别触摸屏,或者可以使用任何其它触摸屏技术。在一些技术中,触摸屏744作为透明层而包含到显示器742之上以使用户能够使用一个或多个触摸来与呈现在显示器742上的对象或其它信息交互。在其它技术中,触摸屏744是并入未包含显示器742的计算设备的表面上的触摸板。例如,计算设备可以具有并入显示器742上的触摸屏和与显示器742相对的表面上的触摸板。
在一些技术中,触摸屏744是单触摸式触摸屏。在其它技术中,触摸屏744是多触摸式触摸屏。在一些技术中,触摸屏744被配置成检测离散的触摸、单触摸手势和/或多触摸手势。为方便,这些在本文统称为手势。现在将描述多个手势。应当理解的是,这些手势是示例性的,而不旨在限制随附权利要求的范围。而且,所描述的手势、附加手势和/或可替代手势可以软件来实现而与触摸屏744一起使用。因此,开发者可以创建特定于特定的应用程序的手势。
在一些技术中,触摸屏744支持轻敲手势,其中用户对呈现在显示器742上的项轻敲触摸屏744一次。轻敲手势可由于各种原因而使用,包括但不限于,打开或启动用户所轻敲的无论什么。在一些技术中,触摸屏744支持双轻敲手势,其中用户对呈现在显示器742上的项轻敲触摸屏744两次。双轻敲手势可由于各种原因而使用,包括但不限于在阶段中缩小或放大。在一些技术中,触摸屏744支持轻敲且保持手势,其中用户轻敲触摸屏744且保持接触至少预定义时间。轻敲且保持手势可由于各种原因而使用,包括但不限于,打开上下文特定菜单。
在一些技术中,触摸屏744支持平移手势,其中用户将手指放在触摸屏744上且在触摸屏744上移动手指的同时保持与触摸屏744接触。平移手势可由于各种原因而使用,包括但不限于,在受控速率下移过屏幕、图像或菜单。还可以设想多手指平移手势。在一些技术中,触摸屏744支持轻弹手势,其中用户沿用户想要屏幕移动的方向划动手指。轻弹手势可由于各种原因而使用,包括但不限于,水平地或者垂直地滚动通过菜单或页。在一些技术中,触摸屏744支持捏合与伸展手势,其中用户在触摸屏744上用两个手指(例如,拇指和食指)做出捏合运动或者移动使两个手指分开。捏合与伸展手势可由于各种原因而使用,包括但不限于,逐渐地缩小或放大网站、地图或图片。
虽然已经参考用于执行手势的一个或多个手指的使用描述了上述手势,诸如足趾的其它附件或诸如指示笔的对象也可用于与触摸屏744交互。因此,上述手势应当理解为示例性的,而不应解释为以任何方式限制。
数据I/O接口组件746被配置成利于向计算设备输入数据以及从计算设备输出数据。在一些技术中,数据I/O接口组件746包括连接器,该连接器被配置成提供计算设备与计算机系统之间的有线连接,例如用于同步操作的目的。连接器可以是专用连接器或标准化的连接器,如USB、微型USB、迷你型USB或类似物。在一些技术中,连接器是用于将计算设备与诸如对接站的另一设备、音频设备(例如,数字音乐播放器)或视频设备对接的对接连接器。
音频I/O接口组件748被配置成提供音频输入和/或输出能力给计算设备。在一些技术中,音频I/O接口组件746包括被配置成采集音频信号的麦克风。在一些技术中,音频I/O接口组件746包括被配置成提供用于耳机或其它外部扬声器的连接的耳机插口。在一些技术中,音频接口组件748包括用于音频信号的输出的扬声器。在一些技术中,音频I/O接口组件746包括光缆音频出口。
视频I/O接口组件750被配置成提供视频输入和/或输出能力给计算设备。在一些技术中,视频I/O接口组件750包括视频连接器,该视频连接器被配置成接收来自另一设备(例如,诸如DVD或BLURAY播放器的视频媒体播放器)的视频作为输入)或者将视频作为输出发送到另一设备(例如,监控器、电视机或某其它外部显示器)。在一些技术中,视频I/O接口组件750包括高清多媒体接口(“HDMI”)、迷你型HDMI、微型HDMI、DisplayPort或到输入/输出视频内容的专用连接器。在一些技术中,视频I/O接口组件750或其部分与音频I/O接口组件748或其部分组合。
照相机752可以被配置成捕获静像和/或视频。照相机752可以使用电荷耦合器件(“CCD”)或互补金属氧化物半导体(“CMOS”)图像传感器来捕获图像。在一些技术中,照相机752包括辅助在低光照环境下拍摄图片的闪光灯。用于照相机752的设置可实现为硬件或软件按钮。
虽然没有示出,一个或多个硬件按钮也可以包含在计算设备体系结构700中。硬件按钮可用于控制计算设备的某操作方面。硬件按钮可以是专用按钮或多用途按钮。硬件按钮可以是机械或基于传感器的。
图示的电力组件712包括一个或多个电池754,电池能够连接到电池计量仪756。电池754可以是可再充电的或一次性的。可再充电电池类型包括但不限于锂聚合物,锂离子,镍镉和镍金属氢化物。电池754中的每个可以由一个或多个单元制成。
电池计量仪756可以被配置成测量诸如电流、电压和温度的电池参数。在一些技术中,电池计量仪756被配置成测量电池的放电速率、温度、寿命和在一定误差百分比内预测剩余寿命的其它因素的效果。在一些技术中,电池计量仪756提供测量给应用程序,应用程序被配置成使用测量来向用户呈现有用的电力管理数据。电力管理数据可以包括所使用的电池百分比、电池剩余百分比、电池状态、剩余时间、剩余容量(例如,以瓦特小时数计)、消耗的电流和电压的中的一项或多项。
电力组件712还可以包括电力连接器,其可以与上述I/O组件710中的一个或多个组合。电力组件712可以经由电力I/O组件744与外部电力系统或充电装备相接。
基于上述,应当意识到在本文已经公开了用于提供可视化建议的技术。虽然本文所呈现的主题是以特定于计算机结构特征的语言、方法和变换动作、具体的计算机器和计算机可读介质来描述,但是应当理解,在随附的权利要求中限定的本发明不必局限于本文所描述的具体的特征、动作或介质。相反,具体的特征、动作和介质被公开作为实现权利要求的示例形式。
本文公开的技术可如以下条款中所阐述的来描述:
条款1.一种用于提供可视化建议的计算机实现的方法,所述方法包括:
接收可视化数据,所述可视化数据具有与其相关联的配置文件数据并且具有到与其相关联的数据源的至少一个数据连接;
识别与所述配置文件数据和所述至少一个数据连接中的至少一个相关的现有可视化信息;
基于所识别的现有可视化信息来确定可视化建议;以及
提供所述可视化建议。
条款2.根据条款1所述的计算机实现的方法,其中所述配置文件数据包括描述身份数据或上下文信息的元数据。
条款3.根据条款1-2中任一项所述的计算机实现的方法,其中所述现有可视化信息包括现有格式化信息、现有样式信息、现有布局信息、现有概要信息或现有图形元件信息中的至少之一。
条款4.根据条款1-3中任一项所述的计算机实现的方法,其中确定所述可视化建议包括:
确定所述配置文件数据的至少一部分与所述现有可视化信息的一部分相关联;以及
至少部分地基于所述现有可视化信息的所述部分来生成所述可视化建议。
条款5.根据条款1-4中任一项所述的计算机实现的方法,其中确定所述可视化建议包括:
确定所述现有可视化信息的至少一部分包括与所述至少一个数据连接相关的数据连接;以及
生成所述可视化建议以包含与所述相关的数据连接相关联的现有可视化信息的结构或图形元件。
条款6.根据条款1-5中任一项所述的计算机实现的方法,其中确定所述可视化建议包括:
确定所述现有可视化信息的一部分与所述配置文件数据相关联;
确定所述现有可视化信息的所述部分包括与所述至少一个数据连接相关的数据连接;以及
生成所述可视化建议以包括与相关的数据连接相关联的现有可视化信息的结构或图形元件。
条款7.根据条款1-6中任一项所述的计算机实现的方法,还包括提供所述可视化建议以通过用户界面(UI)元件显示。
条款8.根据条款1-7中任一项所述的计算机实现的方法,其中所述UI元件包括表示所述可视化建议的尺寸、格式和样式的重影渲染或内联渲染或者表示所述可视化建议的可选图形渲染。
条款9.根据条款1-8中任一项所述的计算机实现的方法,还包括:
接收所述可视化建议的选择;
将所述可视化建议应用于所述可视化数据;
基于所应用的可视化建议、所述至少一个数据连接和所述配置文件数据来确定用于所述可视化数据的附加的可视化建议;以及
提供所述附加的可视化建议。
条款10.根据条款1-9中任一项所述的计算机实现的方法,其中,接收到的可视化数据包括到多个数据源的多个数据连接,并且其中所述方法还包括:
识别与所述多个数据连接相关的现有可视化信息;
基于所识别的现有可视化信息来确定多个可视化建议;以及
提供所述多个可视化建议。
条款11.一种被配置成提供可视化建议的数据处理系统,所述系统包括:
至少一个计算机,其执行可视化建议服务层,所述可视化建议服务层被配置成
接收可视化数据,所述可视化数据具有到与其相关联的数据源的至少一个数据连接,
识别与所述至少一个数据连接相关的现有可视化信息,
基于所识别的现有可视化信息来确定可视化建议,以及
提供所述可视化建议。
条款12.根据条款11所述的数据处理系统,其中所述至少一个数据连接包括来自接收到的可视化数据的查询陈述。
条款13.根据条款11-12中任一项所述的数据处理系统,其中确定所述可视化建议包括:
确定所述现有可视化信息的一部分包括与所述至少一个数据连接相关的数据连接;以及
至少部分地基于所述现有可视化信息的所述部分来生成所述可视化建议。
条款14.根据条款11-13中任一项所述的数据处理系统,其中所述现有可视化信息包括现有格式化信息、现有样式信息、现有布局信息、现有概要信息或现有图形元件信息中的至少之一。
条款15.根据条款11-14中任一项所述的数据处理系统,其中接收可视化数据包括接收与可视化数据相关联的查询陈述,并且其中确定所述可视化建议包括:
确定所述现有可视化信息的一部分包括匹配接收到的查询陈述的查询陈述;以及
至少部分地基于所述现有可视化信息的所述部分来生成所述可视化建议。
条款16.根据条款11-15中任一项所述的数据处理系统,其中所述可视化建议服务层进一步被配置成:
接收所述可视化建议的选择;
将所述可视化建议应用于所述可视化数据;
基于所应用的可视化建议和所述至少一个数据连接来确定用于所述可视化数据的附加的可视化建议;以及
提供所述附加的可视化建议。
条款17.一种用于提供可视化建议的计算机实现的方法,所述方法包括:
存储现有可视化信息,所述现有可视化信息包括配置文件数据和用于多个数据连接的可视化;
确定用于可视化数据的至少一个可视化建议,其中所述可视化建议包括用于包含在所述可视化数据中的、根据所述可视化数据的内容和所述现有可视化信息而匹配的可选图形建议;以及
将所述至少一个可视化建议提供给客户端设备,所述客户端设备被配置成通过用户界面(UI)以图形方式显示所述可视化建议,所述UI被配置成接收所显示的可视化建议的各个可视化建议的选择。
条款18.根据条款17所述的计算机实现的方法,其中所述配置文件数据包括描述实现所述多个数据连接中的至少之一的客户端计算机的身份数据或上下文信息的元数据。
条款19.根据条款17-18中任一项所述的计算机实现的方法,其中所述现有可视化信息还包括现有格式化信息、现有样式信息、现有布局信息、现有概述信息、或现有图形元件信息中的至少之一。
条款20.根据条款17-19中任一项所述的计算机实现的方法,其中确定所述可视化建议包括:
确定所述现有可视化信息的至少一部分与所述可视化数据相关联;以及
至少部分地基于所述现有可视化信息的部分来生成所述可视化建议。
上述的主题仅以示例说明的方式来提供,而不应当解释为限制。可以在不遵照所图示和描述的示例的技术和应用且不背离本发明的范围的情况下对本文所描述的主题做出各种修改和改动,本发明真正的主旨和范围在下面的权利要求中进行了阐述。

Claims (6)

1.一种用于提供可视化建议的计算机实现的方法,所述方法包括:
接收来自客户端计算机的可视化数据,所述可视化数据包括标识数据连接的查询陈述;
识别包括现有查询陈述的现有可视化信息,所述现有查询陈述标识所述数据连接;
部分基于所述现有查询陈述标识所述数据连接,确定所接收的查询陈述与所述现有查询陈述匹配;
响应于接收到所述可视化数据并且确定所接收的查询陈述与所述现有查询陈述匹配,基于所识别的现有可视化信息来生成针对所述可视化数据的可视化建议,其中,所述现有可视化信息先前已经应用于来自所述数据连接的现有可视化数据;以及
将所述可视化建议提供给所述客户端计算机以便应用于来自所述客户端计算机的所述可视化数据,所述可视化建议包括结构或图形元件。
2.如权利要求1所述的计算机实现的方法,其中,所述现有可视化信息还包括配置文件数据,所述配置文件数据包括描述身份数据或上下文信息的元数据。
3.如权利要求1所述的计算机实现的方法,其中,所述现有可视化信息包括标识至少一个数据连接的数据,所述现有可视化信息还包括现有格式化信息、现有样式信息、现有布局信息、现有概要信息或现有图形元件信息中的至少一个。
4.如权利要求3所述的计算机实现的方法,还包括:
确定所述现有可视化信息的至少一部分包括与所述至少一个数据连接相关的数据连接;以及
生成所述可视化建议以包含与所述相关的数据连接相关联的现有可视化信息的结构或图形元件。
5.如权利要求1所述的计算机实现的方法,还包括:
接收所述可视化建议的选择;
将所述可视化建议应用于所述可视化数据;
基于所应用的可视化建议、至少一个数据连接和配置文件数据来确定用于所述可视化数据的附加的可视化建议;以及
提供所述附加的可视化建议。
6.一种被配置成提供可视化建议的数据处理系统,所述系统包括:
至少一个计算机,其执行可视化建议服务层,所述可视化建议服务层被配置成
接收来自客户端计算机的可视化数据,所述可视化数据包括查询陈述以及到所述查询陈述中标识的数据源的至少一个数据连接,
识别与所述至少一个数据连接相关的现有可视化信息,所述现有可视化信息包括标识所述至少一个数据连接的现有查询陈述,其中,部分基于所述现有查询陈述标识所述至少一个数据连接,所述现有查询陈述被确定为与所述可视化数据中的所述查询陈述匹配,并且其中,所述现有可视化信息先前已经应用于来自所述至少一个数据连接的现有可视化数据;
响应于接收到所述可视化数据,基于所识别的现有可视化信息来确定针对所述可视化数据的可视化建议,以及
将所述可视化建议提供给所述客户端计算机以便应用于来自所述客户端计算机的所述可视化数据,所述可视化建议包括结构或图形元件。
CN201580038405.7A 2014-07-14 2015-07-09 可视化建议 Expired - Fee Related CN106537371B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/330,337 US20160012129A1 (en) 2014-07-14 2014-07-14 Visualization suggestions
US14/330,337 2014-07-14
PCT/US2015/039627 WO2016010794A1 (en) 2014-07-14 2015-07-09 Visualization suggestions

Publications (2)

Publication Number Publication Date
CN106537371A CN106537371A (zh) 2017-03-22
CN106537371B true CN106537371B (zh) 2020-06-05

Family

ID=53836808

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580038405.7A Expired - Fee Related CN106537371B (zh) 2014-07-14 2015-07-09 可视化建议

Country Status (6)

Country Link
US (1) US20160012129A1 (zh)
EP (1) EP3170095A1 (zh)
KR (1) KR20170030529A (zh)
CN (1) CN106537371B (zh)
TW (1) TW201614518A (zh)
WO (1) WO2016010794A1 (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9886710B2 (en) 2014-03-25 2018-02-06 Ebay Inc. Data mesh visualization
US10997190B2 (en) * 2016-02-01 2021-05-04 Splunk Inc. Context-adaptive selection options in a modular visualization framework
US9959097B2 (en) 2016-03-09 2018-05-01 Bank Of America Corporation SVN interface system for heterogeneous development environments
US10459939B1 (en) 2016-07-31 2019-10-29 Splunk Inc. Parallel coordinates chart visualization for machine data search and analysis system
US10459938B1 (en) 2016-07-31 2019-10-29 Splunk Inc. Punchcard chart visualization for machine data search and analysis system
US10861202B1 (en) 2016-07-31 2020-12-08 Splunk Inc. Sankey graph visualization for machine data search and analysis system
US11037342B1 (en) 2016-07-31 2021-06-15 Splunk Inc. Visualization modules for use within a framework for displaying interactive visualizations of event data
US10853380B1 (en) 2016-07-31 2020-12-01 Splunk Inc. Framework for displaying interactive visualizations of event data
CN109325218A (zh) * 2017-08-01 2019-02-12 珠海金山办公软件有限公司 一种数据筛选统计方法、装置、电子设备及存储介质
TWI795982B (zh) * 2021-11-04 2023-03-11 朝陽科技大學 智慧音樂教學系統與智慧音樂教學方法
KR102635750B1 (ko) * 2023-05-31 2024-02-13 주식회사 넛지온 콘텐츠 시각화 방법 및 시스템

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102257472A (zh) * 2008-12-18 2011-11-23 微软公司 数据可视化交互性体系结构
CN102254017A (zh) * 2010-07-21 2011-11-23 微软公司 数据可视化的智能默认
CN102708126A (zh) * 2011-02-28 2012-10-03 微软公司 数据可视化设计和查看系统和方法
CN103034500A (zh) * 2011-12-15 2013-04-10 微软公司 基于用户输入的智能推荐模式

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8010523B2 (en) * 2005-12-30 2011-08-30 Google Inc. Dynamic search box for web browser
US8024666B2 (en) * 2006-06-30 2011-09-20 Business Objects Software Ltd. Apparatus and method for visualizing data
US20090327883A1 (en) * 2008-06-27 2009-12-31 Microsoft Corporation Dynamically adapting visualizations
US8543590B2 (en) * 2009-06-05 2013-09-24 Tsx Inc. Investor relations systems and methods
US9824469B2 (en) * 2012-09-11 2017-11-21 International Business Machines Corporation Determining alternative visualizations for data based on an initial data visualization

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102257472A (zh) * 2008-12-18 2011-11-23 微软公司 数据可视化交互性体系结构
CN102254017A (zh) * 2010-07-21 2011-11-23 微软公司 数据可视化的智能默认
CN102708126A (zh) * 2011-02-28 2012-10-03 微软公司 数据可视化设计和查看系统和方法
CN103034500A (zh) * 2011-12-15 2013-04-10 微软公司 基于用户输入的智能推荐模式

Also Published As

Publication number Publication date
CN106537371A (zh) 2017-03-22
TW201614518A (en) 2016-04-16
KR20170030529A (ko) 2017-03-17
EP3170095A1 (en) 2017-05-24
US20160012129A1 (en) 2016-01-14
WO2016010794A1 (en) 2016-01-21

Similar Documents

Publication Publication Date Title
US10896284B2 (en) Transforming data to create layouts
CN106537371B (zh) 可视化建议
US9805483B2 (en) Enhanced recognition of charted data
US20130145244A1 (en) Quick analysis tool for spreadsheet application programs
US20140046923A1 (en) Generating queries based upon data points in a spreadsheet application
TW201610815A (zh) 字元安排的強化解讀
CN116034385A (zh) 指示相关联内容的可用性的动画视觉提示
CN106663091B (zh) 摘要数据自动填充
US20160092406A1 (en) Inferring Layout Intent
CN111566652A (zh) 用于辅助用户完成任务的上下文感知的推荐
US10839148B2 (en) Coordination of storyline content composed in multiple productivity applications
US9934331B2 (en) Query suggestions
WO2018128954A1 (en) Identification of documents based on location, usage patterns and content
US9542766B1 (en) Intelligent configuration of data visualizations
US20150261736A1 (en) Enhanced Indicators for Identifying Affected Data
US20160379226A1 (en) Intelligent identification of multidimensional insights from process data
BR112016030120B1 (pt) Método implementado por computador para proporcionar uma sugestão de consulta e sistema configurado para proporcionar sugestões de consulta

Legal Events

Date Code Title Description
C06 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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20200605

Termination date: 20210709

CF01 Termination of patent right due to non-payment of annual fee