逻辑表达式可视化工具
Logical Expression Visualizer
我开发了一个业务规则引擎,用户可以用布尔语法编写规则。
例如,规则为:R1、R2、R3
示例表达式:(R1 AND R2)OR R3
我想把这个表达形象化。例如,可视化框架可以在树视图中显示表达式并插入颜色。
是否有任何javascript或任何其他代码框架可以实现这一点?(应用程序是一个ASP.NET应用程序)
我忍不住回答了这个问题,尽管我的回答可能无法帮助您轻松解决问题。早在1998年,我的第一个Javascript项目就是一个布尔表达式可视化工具。
该代码在任何地方都不可用,所以我不能分享它。(我怀疑我的前雇主是否还有副本。)即使是这样,它也在IE4、5.0和5.5上运行;我认为它从未为IE6更新过,也不知道它是否在那里运行。
但我仍然可以告诉你基本的想法,即使在今天,我仍然为结果感到骄傲,尽管我知道看到实际的代码我会不寒而栗。
当然,布尔表达式可以很容易地用树结构来表示。树中的每个非叶节点都是AND、OR或NOT节点,AND和OR可以有多个子节点(所以我将"a和B以及C和D"表示为AND(a、B、C、D),而不仅仅是二进制AND的组合。)为了显示数据,我只使用了嵌套框。and水平运行,or垂直运行,在块之间重复关键字"and"answers"or"。NOT只是一个框中的一个框,外框中有关键字"NOT"。
我的叶节点与用户可以用于测试的真实数据场景相关联,因此它们看起来不像,而不仅仅是"A"answers"B"
age < 30
gender = 'F'
income > 40000
用户可以输入字段age
、gender
和income
的样本数据,输出将变为红绿色显示,以显示表达式的每个块,当然还有整个表达式是真是假。
要使用的字段是可配置的,并且测试用例被保存以备将来详述。
这是一个非常有趣的项目,它有助于编写规则的商务人员和执行规则的程序员之间的沟通,这些人对如何在礼貌的公司中使用"answers"这个词往往有着截然不同的想法。:-)
但要点是,可视化布尔表达式的一种非常有用的方法是使用简单的框:NOT是框中的框,单词"NOT"在外框中。or是包含中间带"或"的垂直分组框的框,and是包含中间带有"answers"的水平分组框的方框。如果你真的可以为你的基元指定truthy/falsy值,那么绿色代表truthy框,红色代表falsy框,这将是一个非常引人注目的显示。
但你必须自己编写代码。很抱歉
- Javascript图形可视化工具包,具有高性能(500-1000个节点)
- 从特定系列的谷歌可视化折线图中删除悬停工具提示
- 逻辑表达式可视化工具
- Javascript树视图可视化工具,用于说“调用图”
- 如何为音频播放器创建可视化工具
- 任何用于 JavaScript 执行上下文可视化的现有工具
- Google 可视化堆积面积图:将总计添加到工具提示
- 谷歌可视化散点图只显示最后一个系列的工具提示
- 类似于谷歌可视化的图表工具
- 在谷歌可视化api中将现有列设置为工具提示
- 使用amCharts在工具提示上可视化表格
- 数据可视化:用Javascript或Python生成简单PDF图表的最佳工具
- 音频可视化工具C#
- 谷歌可视化:堆叠列.HTML自定义工具提示的问题
- Google可视化-尝试格式化每个工具提示,以便按格式化程序或查询显示百分比
- 是否有一种方法来显示悬停/工具提示信息,当我鼠标在spotfire可视化标题
- 谷歌图表/可视化-解散工具提示点击离开
- 需要地图可视化工具,将国家像条形图中的条形一样对待
- 自定义Soundcloud可视化工具
- 谷歌图表工具可视化-在一个页面上实现多个