注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。
Quiver では、数式を使用してカスタムの数学的な式をプロットし、フィルター条件を指定できます。数式では、次の構文要素をサポートしています。
6、3.14159、-128 などの標準的な数値に加え、Quiver は科学的表記法もサポートしています:1.602e-19。$ 記号を使用してプロットを参照できます。$A はパラメーター名が A のプロットを参照し、$A + $B は2つのプロットの合計を計算します。true と false を使用します。secondsSince("time") と millisecondsSince("time") を使用して、数式内で時刻を参照します。時刻を表す語句は ISO-8601 形式 ↗で指定する必要があります。たとえば、secondsSince("1970-01-01T00:00:00+00:00") は、UTC の1970年1月1日からの秒数に評価されます。数式で出力できるのは数値または文字列のみで、ブール値は出力できません。また、出力は同種でなければなりません。つまり、数式はすべての評価で一貫して数値のみ、または文字列のみを出力する必要があります。
ブール値に相当する値を出力する必要がある場合は、次の代替方法を検討してください。
1、false には 0 を使用します。例:$A > 0 ? 1 : 0"true" と "false" を使用します。例:$A > 0 ? "true" : "false"+、-、*、/ および剰余演算子 % をサポートしています。10 % 7 は 3 に評価されます。括弧 () を使用して優先順位を指定することもできます。これらの演算子は、結果として倍精度の数値を生成します。
^ を使用してべき乗演算を行うことはできません。べき乗を計算するには、下記の組み込み関数の pow 関数を参照してください。==、不等価比較に !=、大小比較に >、<、>=、<= をサポートしています。これらの演算子は、結果としてブール値を生成します。&&)および論理 OR(||)演算子を使用して、ブール値を組み合わせることができます。Quiver は、ブール値を反転する論理 NOT 演算子(!)もサポートしています。&)、OR(|)、XOR(^)、NOT(~)を実行できます。ビットシフトも実行できます。<< は左シフト、>> は符号を保持する算術右シフト、>>> は0で埋める論理右シフトです。Quiver は、次の組み込み数学関数をサポートしています。
| 関数名 | 説明 |
|---|---|
abs(a) | 絶対値 |
acos(a) | 逆余弦 |
acosh(a) | 逆双曲線余弦 |
asin(a) | 逆正弦 |
asinh(a) | 逆双曲線正弦 |
atan(a) | 逆正接 |
atanh(a) | 逆双曲線正接 |
atan2(a, b) | 2つの数値の逆正接(4象限の逆正接)。a は y 座標、b は x 座標です。 |
cbrt(a) | 立方根 |
ceil(a) | 切り上げ |
cos(a) | 余弦 |
cosh(a) | 双曲線余弦 |
exp(a) | 自然指数関数 |
floor(a) | 切り下げ |
isfinite(a) | 引数が無限大でも NaN でもない場合は true |
isnan(a) | 引数が NaN の場合は true |
ln(a) | 自然対数 |
log10(a) | 底が10の対数 |
log2(a) | 底が2の対数 |
max(a, b, ...) | 指定されたすべての入力の最大値 |
min(a, b, ...) | 指定されたすべての入力の最小値 |
pow(a, b) | a の b 乗 |
round(a) | 最も近い整数に丸める |
signum(a) | 符号関数 |
sin(a) | 正弦 |
sinh(a) | 双曲線正弦 |
sqrt(a) | 平方根 |
tan(a) | 正接 |
tanh(a) | 双曲線正接 |
Quiver は、「a ならば b、そうでなければ c」を表す三項演算子 a ? b : c をサポートしています。たとえば、$A > 0 ? $B * 10 : $C * 10 は、各時点で、その時点の $A の値が0より大きい場合は $B * 10 の値になり、そうでない場合は $C * 10 の値になります。
NaN 値を使用して、入力系列に値がない箇所で代替値を返すこともできます。たとえば、@M != NaN ? @M : @K は、各時点で、@M に数値がある場合は @M の値になり、そうでない場合は @K の値になります。
return 文と skip 文を使用すると、処理を「早期に」停止し、値を返すか、値を返さないことを示す(たとえば、点を除外する)ことができます。
変数は var キーワードで宣言します。= 記号は、変数に値を代入するために使用します。変数は数値(倍精度)、ブール値、または文字列です。
var a = 6;
var b = 3.14159;
var c = 1.602e-19; // 指数表記法をサポートしています
var d = 1.602E-19; // 指数表記では大文字と小文字を区別しません
var boolean_example = true;
var boolean_example = false; // false を再代入します
var string_example = "high";
リテラルと変数を組み合わせて、より複雑な式を作成できます。
基本的な数学演算子は +、-、*、/ です。剰余を計算するには、% を使用します。
var a = 2 + 2; // a の値は4です
a = 3 * 7; // a の値は21です
a = 3.5 / 7; // a の値は0.5です
a = 10 % 7; // a の値は3です
演算子の優先順位は一般的な規則に従います。括弧 ( ) を使用して、式をまとめることができます。
var a = 5 + 3 * 2; // a の値は11です
var b = (5 + 3) * 2; // b の値は16です
上記の5つの演算子には、代入演算子の形式も使用できます。
var a = 10;
a *= 2; // a の値は20になります
a += 3; // a の値は23になります
a -= 5; // a の値は18になります
a /= 3; // a の値は6になります
a %= 5; // a の値は1になります
比較演算子 <、<=、>、>= を使用して、数値を比較できます。これらの演算子は、ブール値(true または false)の結果を生成します。
等価性は ==、不等価性は != で確認できます。
これらの式は、論理演算子 && と || で組み合わせることができます。
! 演算子を使用して、ブール値の結果を反転できます(true は false に、false は true になります)。
等価性は ==、不等価性は != で確認できます。
var a = "high";
var b = "low";
// 値を比較します
var c = a == a; // true
var d = a != b; // true