Random Uniform() は同じ番号を返し続けます私のスクリプトは、結果をデータ テーブルに書き込むまで、Random Uniform() からランダムな値を返しています。テーブルに書き込むと、Random Uniform() は常に同じ値を返します。以下のスクリプト内のコメントを参照してください。助けていただければ幸いです。
どうもありがとう、
ジョン
names default to here(1);
clear log();
include("defineVectorClass.jsl");
dtChaos = open("chaos.jmp");
proportionToCorner = 0.5;
A = new object(Vector(column(dtChaos,"x")[1],column(dtChaos,"y")[1]));
B = new object(Vector(column(dtChaos,"x")[2],column(dtChaos,"y")[2]));
C = new object(Vector(column(dtChaos,"x")[3],column(dtChaos,"y")[3]));
triangle = {A,B,C};
dtChaos<<GRAPH builder=""></GRAPH>Re: Random Uniform() は同じ番号を返し続けますありがとうザン
Re: Random Uniform() は同じ番号を返し続けます早速のご返事ありがとうございます。ラベルはシミュレーションにとって重要ではなかったので、あなたが提案したようにラベルをオフにしただけで、すべてがうまく機能しています。
Re: Random Uniform() は同じ番号を返し続けますもう 1 つの回避策は、「グラフ」環境設定グループの「重複するラベルを非表示」環境設定をオフにすることです。 それがランダム ストリームへの干渉の原因となっているようです。
Re: Random Uniform() は同じ番号を返し続けます(ありがとう@EvanMcorkleと@ダンシコレ今朝到着する前にこの問題を理解できなかったのですから!)
これは JMP のマーカー描画のバグです。 JSL を動作させる最も簡単な方法は、ラベルの状態を削除して色に変更することです。
Use color rather than labelUse color rather than labelラベルではなく色を使用する
問題は、データ ポイントの周囲にラベルを配置するコードにあります。衝突するラベルを処理するには反復可能な乱数のシーケンスが必要ですが、お気づきのように、リセットをそれ自体に保持していません。
ラベルを保持する別のアプローチには、JSL での回避策が必要です。
r = Random Seed State(); // the following statements make the graph update...
newX = current:x;
newY = current:y;
column(dtChaos,"X")[1+4]=newX;
column(dtChaos,"Y")[1+4]=newY;
wait(2);
Random Seed State(r);
これはtをキャプチャして復元しますマーカーが描画される前後のランダムな状態。 テーブル内の値の変更と待機の組み合わせにより、グラフの更新がトリガーされます。
テストケースをありがとうございます。適切な修正が進行中です。
Re: Random Uniform() は同じ番号を返し続けます問題はわかりましたが、答えはまだわかりません。
月曜の朝見てみます。
@EvanMcorkle