你好,
我正在嘗試創建一個鏈接到另一個數據表的懸停圖形。 第一個數據表有一堆串聯的 CSV 文件,我對其執行線性擬合,然後按 CSV 文件的文件名繪製各個點。 當我將鼠標懸停在線性擬合值上時,我想查看顯示在 graphlet 中的第一個數據表中的實際數據點。
這是我到目前為止...
Names Default To Here( 1 );
platform = Data Table( "Untitled 364" ) << Bivariate(
Y( :Y ),
X( :X ),
Fit Line( {Line Color( {212, 73, 88} )} ),
By( :FileName )
);
Wait( 0 );
Report( platform[1] )[Outline Box( "Linear Fit" )][
Outline Box( "Parameter Estimates" )][Table Box( 1 )] << Make Combined Data Table;
Report( platform[1] ) << Close Window;
Graph Builder(
Size( 531, 405 ),
Show Control Panel( 0 ),
Variables( X( :FileName ), Y( :Estimate ) ),
Elements( Points( X, Y, Legend( 10 ) ) ),
Local Data Filter( Add Filter( columns( :Term ), Where( :Term == "X" ) ) ),
SendToReport(
Dispatch(
{},
"Graph Builder",
FrameBox,
{Set Graphlet(
Picture(
Graph Builder(
Size( 531, 456 ),
Show Control Panel( 0 ),
Variables( X( :X ), Y( :Y ), Overlay( :FileName ) ),
Elements(
Points( X, Y, Legend( 5 ) ),
Line Of Fit( X, Y, Legend( 7 ), Confidence of Fit( 0 ) )
)
)
)
)}
)
)
)隨附的 jmp 表有一些示例數據和我希望在 graphlet 中創建的圖表。
謝謝你的幫助!
解決方法遠高於我的 JSL 級別,但我可以確認它已在 JMP16 中修復!
謝謝你。 多麼酷的功能!
你好@傑夫G ,
解決方法已附上。
是的,我忘了說,它是為 JMP 16.0 修復的。
你好@nascif_jmp ,
謝謝回复。 我會期待解決方法。
此外,如果這是一個錯誤,是否有計劃在即將發布的版本中修復它?
很可能就是這樣。 15 中的 graphlet 過濾器生成也有一個錯誤,這也可能是您遇到此問題的原因。
我將找到一個解決方法,它繞過默認過濾器生成並完全在 graphlet Picture 擴展點內創建它。 也許它也對你有用。
也許是一個額外的問題 -
我試圖在控製圖中實現這一點,並且控製圖中的 graphlet 為每個點顯示相同的圖:單個圖中的所有數據,而不是由 FileName 分隔。 我認為原因是控製圖生成器沒有 X 的輸入。 是否需要添加一些額外的過濾器來查找文件名並將其與控製圖值匹配?
你好@傑夫G ,
哇,這是一個有趣的挑戰。 請參閱隨附的腳本,我認為它可以滿足您的需求。
基本上我更改了您的腳本以從原始表創建graphlet。
由於 X 和 Y 列名稱 where 相同,因此從派生表創建的 where 子句適用於原始表。
這就像一個隱式連接。
我使用 SkipFilter 消除了“Term”上的過濾器(原始表中不存在該過濾器),以避免出現錯誤消息。
最後,我使用 Lock Scales(1) 來更輕鬆地比較不同的擬合線。
這是最終結果:

謝謝你的好例子!
我將不得不在一兩個演示文稿中展示這種技術。 