古い動作中のJMP13スクリプトは、JMP15では動作しなくなりました。 スクリプトは-XYマップファイルの座標を変更し、グラフビルダーの更新も変更されたマップも表示されず、新しいグラフビルダーインスタンスが作成されます。 新しいセッションを開くだけで、新しいマップが表示されます。 ある種のキャッシュが更新を妨げているようです。
この動作を修正または回避することは可能ですか?
dt2 = open("C:/TEMP/map-Name.jmp");
dt3 = open("C:/TEMP/map-XY.jmp");
dt= open("C:/TEMP/map.jmp");
new window("shift up",
gb = dt << Graph Builder(
Size( 1381, 885 ),
Variables( Shape( :xy ) ),
Elements( Map Shapes( Legend( 6 ) ) )
);
text box("shift up selected columns by 10"),
button box("up",
rws= dt<< Get Selected Rows();
if(nrows(rws),
r=[];
for(j=1, j<=nitems(rws), j++,
sh= dt[rws[j],"X"];
dt << select where(:X == sh);
rw= dt << get selected rows;
r= r |/ rw;
);
for(i=1, i<=nitems(r), i++,
dt[r[i],"bottom"]=dt[r[i],"bottom"] + 10;
dt[r[i],"top"]=dt[r[i],"top"] + 10;
);
rws= r;
values= column(dt,"xy")[rws];
rws= dt2 << get rows where( Contains( values, :Name ) );
shapes= column(dt2,"Shape ID")[rws];
rws = dt3 << get rows where(Contains( shapes, :Name("Shape ID") ) );
sy = column(dt3,"Y1") << get values;
for(i=1, i<=nrows(rws), i++,
sy[rws[i]] = sy[rws[i]] + 10;
);
column(dt3, "Y1") << set values(sy);
dt3<<SAVE></SAVE>