在我拋棄我的地圖製作工具並全力以赴進行另一個shapefile練習之前,我想我會與所有人核對一下-是否有人看到或做過任何類似的事情?史密斯圖在JMP中?好像在社區出現過兩次( 線程1 和線程2 ),但我想對於主要產品的積極開發而言,這太小了。
我正在考慮創建一個shapefile,該文件可以在Graph Builder中用作直角坐標轉換後的數據的疊加層,但是我想確保自己不會重新發明輪子。
有什麼想法嗎?
中號
你好 @Craige_Hales !
謝謝你!我認為這將有助於創建我要嘗試的東西。 shapefile背後的想法是,您可以使shapefile作為背景圖顯示在繪圖中。 客戶將此圖像發送給我(見下文)作為示例。 基於該圖像,我正在考慮做的是創建一個帶有Smith繪圖線的shapefile,然後可以將其添加為背景圖。他們可以通過更改圖形自定義選項中的圖層順序,將其放在等高線圖的頂部。 這應該複製他們與GB和PowerPoint一起被黑客入侵的內容。
如果您對此類數據感興趣,我已附加了用戶發送的示例數據文件-僅需內部使用。

謝謝!
中號
我不確定是否要回答這個問題;史密斯圓圖和形狀文件似乎無關。這個答案是關於史密斯圓圖的,但是替代了極坐標圖。
使用XYFunction,它將節省大量時間。如果您具有變換功能,則XY函數可以使用它來適當地扭曲線條。這是一個極坐標圖示例。對於XY函數,t是一個從0到1的參數,用於選擇起始角度/半徑到終止角度/半徑的分數。
// polar coordinate example
// x,y -> polar: angle = atan(y,x), radius = sqrt(x^2+y^2)
// a,r -> rect: x = r*cos(angle), y = r*sin(angle)
//
polarDrawLine = Function( {a1, r1, a2, r2},
{},
XY Function(
((1 - t) * r1 + t * r2) * Cos( (1 - t) * a1 + t * a2 ),
((1 - t) * r1 + t * r2) * Sin( (1 - t) * a1 + t * a2 ),
t,
Min( 0 ),
Max( 1 )
)
);
polarDrawText = Function( {a, r, t},
Text( {r * Cos( a ), r * Sin( a )}, t )
);
New Window( "polar",
Graph Box(
suppressaxes,
Frame Size( 800, 800 ),
X Scale( -105, 105 ),
Y Scale( -105, 105 ),
Pen Color( "Blue" );
For( r = 10, r <= 100, r += 10,
polarDrawLine( 0, r, 2 * Pi(), r );
polarDrawText( Pi() / 3, r - 5, Char( r, 3 ) );
);
Pen Color( "red" );
For( a = 0, a < 2 * Pi(), a += Pi() / 4,
polarDrawLine( a, 0, a, 100 );
polarDrawText( a, 95, Char( a, 4 ) );
);
Pen Color( "green" );
Pen Size( 3 );
polarDrawLine( 1, 10, 2, 70 );
)
);
polar graph bends a straight line極坐標圖彎曲一條直線
(為了好玩,更改綠線以使其纏繞幾次PolarDrawLine(1,10,20,70); ... 角度1和20以弧度為單位,而6.28是一個完整的圓,因此您獲得了3個環繞角。
three loops三個循環