<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />我想用連接一些城市的線條創建美國地圖。這適用於供應鏈應用程序,因此理想情況下,行的寬度將與每組點之間的銷售額成比例。一旦我有線,我可以添加美國作為背景地圖。我應該使用哪個圖形函數?
Line()函數在例如圖形中繪製一條線,並且可以是圖形腳本的一部分。要迭代地添加許多行,最安全的方法是使用圖形腳本的字符串表示並在每次迭代中解析它。下面的JSL示例可能會給你一些想法。
//四個城市之間銷售的示例表及其坐標。
DT = 新表 ( “LinesBetweenCities.jmp” ,
添加行 ( 10 ) ,
新欄目 ( “市” ,
字符 ,
設定值 (
{ “克利夫蘭,俄亥俄州” , “克利夫蘭,俄亥俄州” , “克利夫蘭,俄亥俄州” , “克利夫蘭,俄亥俄州” , “得梅因,愛荷華州” , “得梅因,愛荷華州” , “得梅因,愛荷華州” ,
“洛杉磯,加利福尼亞州。” , “洛杉磯,加利福尼亞州。” , “阿拉巴馬州蒙哥馬利。” }
)
) ,
新欄目 ( “N” ,數字 ,格式 ( “最好” , 12 ) ,設定值 ( [ 41.467 , 41.467 , 41.467 , 41.467 , 41.583 , 41.583 , 41.583 , 34.05 , 34.05 , 32.35 ] ) ) ,
新欄目 ( “W” ,
數字 ,
格式 ( “最好” , 12 ) ,
設定值 ( [ - 81.617 , - 81.617 , - 81.617 , - 81.617 , - 93.617 , - 93.617 , - 93.617 , - 118.25 , - 118.25 , - 86.3 ] )
) ,
新欄目 ( “銷售” ,數字 ,連續 ,格式 ( “最好” , 12 ) ,式 ( 回合 ( 隨機統一 () , 2 ) ) ) ,
新欄目 ( “隨著” ,
字符 ,
公稱 ,
設定值 (
{ “克利夫蘭,俄亥俄州” , “得梅因,愛荷華州” , “洛杉磯,加利福尼亞州。” , “阿拉巴馬州蒙哥馬利。” , “得梅因,愛荷華州” , “洛杉磯,加利福尼亞州。” ,
“阿拉巴馬州蒙哥馬利。” , “洛杉磯,加利福尼亞州。” , “阿拉巴馬州蒙哥馬利。” , “阿拉巴馬州蒙哥馬利。” }
)
) ,
設置行狀態 ( [ 8 , 0 , 0 , 0 , 8 , 0 , 0 , 8 , 0 , 8 ] ) ,
設置標籤列 ( : 市 )
) ;
GB = 圖形生成器 (
變量 ( X ( : w ^ ) , ÿ ( : ñ ) ) ,
分子 ( 點 ( X , ÿ ,傳說 ( 1 ) ) ) ,
SendToReport (
調度 (
{} ,
“圖形生成器” ,
FrameBox ,
{ 背景地圖 ( 邊界 ( “美國” ) ) ,標記大小 ( 6 ) ,網格線順序 ( 2 ) ,參考線訂單 ( 3 ) ,
DispatchSeg (
ShapeSeg ( 1 ) ,
{ 線條顏色 ( { 204 , 204 , 204 } ) ,填色 ( “沒有” ) ,缺少形狀填充 ( 2147483647 ) ,缺少值填充 ( - 14540253 )}
)}
)
)
) ;
FB = 報告 ( GB ) FrameBox ( 1 )] ;
//繪製線條的腳本的字符串表示形式
line_string =
“fb <<添加圖形腳本(3,筆顏色({。3,.5,.7});
筆大小(^圓(10 *:銷售額 ,0)^);
線({^:W ^,^:N ^},{^:W [coord] ^,^:N [coord] ^})
)“ ;
//添加在每對城市之間繪製線條的圖形腳本。筆的大小取決於銷售額。
對於 ( 一世 = 1 ,一世 <= N行 ( DT ) ,一世 ++,
坐標 = ( DT << getrows在哪裡 ( : 同 [ 一世 ] == : 市 ))[ 1 ] ; //在With列中獲取城市的坐標
EVAL ( 解析 ( 評估插入 ( line_string ) ) ) ; //評估line_str中的變量並將文本解析為工作jsl
) ;
有什麼方法可以在JMP中做到嗎?我無法訪問SAS。