Mingcedar

所属产品: Mingcedar Studio DESIGNER

Discrete Color 离散颜色 | Mingcedar Studio

按阈值将数值分成最多 8 个状态区间,并为每个区间配置填充、边框和显隐;适合状态码、位组合等取值有限的场景。

首次发布 最近更新

<div class="manual-doc-article manual-doc-article-section"><h2 id="discrete-color">颜色: Discrete Color 离散颜色</h2>

按阈值将数值分成最多 8 个状态区间,并为每个区间配置填充、边框和显隐;适合状态码、位组合等取值有限的场景。

<div class="doc-card-list">

<article class="doc-card">

<h3 id="discrete-color-item-1">功能说明</h3>

<p>Discrete Color 根据七个递增阈值,将 State value 的数值分到最多八个区间,并应用对应的填充色、边框色和显隐设置。可用它显示状态码、报警等级或位组合;需要精确区分某些取值时,应设置能将这些值分开的阈值。</p>

</article>

<article class="doc-card doc-card-tip">

<h3 id="discrete-color-item-2">字段配置</h3>

<p>打开 Discrete Color 编辑器。Setup script 准备数据,State value 返回数值;State actions 的 Value &lt; 列填写七个递增阈值,形成八个状态区间。</p>

<ul>

<li>Setup Script:读取数值 Tag 并准备状态值。</li>

<li>State value:返回数值,例如 stateValue;布尔状态应使用 State Color,或明确转换为 0 / 1。</li>

<li>State actions / Value &lt;:默认阈值为 0、1、2、4、8、16、32。边界按“小于”判断,最后一个状态显示为 Final (+∞)。</li>

<li>Fill(填充):8 个状态各自的填充颜色;可整体开关。</li>

<li>Border(边框):8 个状态各自的边框颜色;可整体开关。</li>

<li>Visibility(可见性):8 个状态各自显示或隐藏;可整体开关。</li>

<li>Quality override:Follow data quality (border / hide) 控制质量边框和质量异常时隐藏;状态边框已启用时,其颜色优先于 Good。</li>

</ul>

<div class="manual-code" data-code-language="javascript"><div class="manual-code-toolbar"><span>JavaScript</span><span class="manual-code-tools"><small>JavaScript</small><button type="button" data-copy-code data-copied="已复制" data-failed="请选中代码后复制" aria-label="复制代码: JavaScript">复制代码</button><span class="manual-code-status" role="status"></span></span></div><pre tabindex="0" class="docs-code-block shiki github-light" style="background-color:#fff;color:#24292e" tabindex="0"><code><span class="line"><span style="color:#6A737D">// Setup script</span></span>

<span class="line"><span style="color:#D73A49">var</span><span style="color:#24292E"> stateValue </span><span style="color:#D73A49">=</span><span style="color:#6F42C1"> ReadTagInteger</span><span style="color:#24292E">(</span><span style="color:#032F62">"PLC_LINE01.PUMP01.MODE"</span><span style="color:#24292E">, </span><span style="color:#005CC5">0</span><span style="color:#24292E">);</span></span>

<span class="line"></span>

<span class="line"><span style="color:#6A737D">// State value</span></span>

<span class="line"><span style="color:#24292E">stateValue</span></span></code></pre></div>

</article>

<article class="doc-card doc-card-warn">

<h3 id="discrete-color-item-3">适用场景</h3>

<p>当有限的数值需要按阈值显示不同外观时使用。</p>

<ul>

<li>设备状态码:设置阈值,使 0(停机)、1(运行)、2(故障)和 4(维护)分别落入目标颜色区间。</li>

<li>报警等级或位组合:把整型状态映射成几个固定档位,不同档位用不同填充/边框/显隐。</li>

</ul>

</article>

<article class="doc-card">

<h3 id="discrete-color-item-4">常见问题</h3>

<p>常见边界:</p>

<ul>

<li>State value 必须返回数值;需要布尔条件时使用 State Color。</li>

<li>最多 8 个状态。状态数超过 8 个无法用它表达。</li>

<li>Discrete Color 使用阈值区间,不是枚举值相等匹配。默认阈值下,2 和 3 都进入 [2, 4);需要区分时应调整阈值,或使用 Multi-State Color 的严格相等条件。</li>

<li>Value &lt; 的七个阈值应递增。默认情况下,0 进入 [0, 1),32 及以上进入最终状态;不存在自动的“未定义枚举值”分支。</li>

<li>Quality Border 反映的是通信质量,不是过程值本身;质量差时不应继续当作有效值渲染。</li>

</ul>

</article>

</div>

<div class="docs-note-grid manual-doc-image-grid">

<figure class="docs-note-card manual-doc-image-card" id="discrete-color-image-1">

<img src="/WEB_img/HQPPT/current/color/discrete.png" alt="Discrete Color 离散颜色编辑器" loading="lazy" decoding="async" />

<figcaption>

<strong>图示 1: Discrete Color 编辑器</strong>

<p>把一个数值按阈值落到最多 8 个固定状态,每个状态配置独立的填充、边框和显隐。</p>

</figcaption>

</figure>

</div>

</div>