2009/09/27

土法煉鋼繪製海拔里程圖

雖然利用GPS畫海拔里程圖已經不是啥新鮮事,但如果是在沒有前人提供GPS資料、自己又根本還沒出發的情況下,究竟有沒有辦法自己「製造」出來呢?

根據我自己的實際經驗,即使目前網路上已有不少神奇的電子地圖工具,可惜對於一些偏遠地區仍有侷限。例如,明明繞過雲南四川交界的瀘沽湖一周,電子地圖上卻怎麼也找不出那條環湖道路。更令人洩氣的,衛星地圖也不足以清晰到可以標示出那些小土路。

既然如此,只好回到最原始的土法來做囉!雖然有點小累,但這個事前作業絕對值得,它將使我們單車旅行的路線與時間規劃更能符合實際需求,或至少讓人有足夠的心理準備,哈...

首先,我們必須準備以下幾個工具:
Google Earth中文版
Excel(本例使用2003版)
如果有張附公路里程的地圖更佳(試著向Google大神尋求吧)

STEP.1為自己規劃的路現找出地圖上的參考點
通常以村鎮或景點,也就是地圖上有標示的地名,將之列出。

STEP.2以google earth找出每一個參考點的海拔高度

*在左上角輸入地名,資訊越詳細越好,以免地圖無法判斷你想要找的是哪一個國家、哪一省、哪一鄉鎮。
*注意最下方的「地形」選項為「選取」狀態。
*將滑鼠移到地圖標示的地點,便可在視窗最下方看到海拔高度資訊。(注意,非視角海拔高度)

STEP.3建立Excel資料表
將地名、里程、海拔資料輸入如下表:

*建議A欄的地名後附加海拔數據(中間避免輸入任何特殊符號),好讓最後製作出來的海拔里程圖更便於閱讀。
*里程數據需為累計值。例如A-B距離為50Km,B-C距離為40Km,則對應到C的里程數應填入A-C的總距離,也就是90Km。

STEP.4建立圖表
選擇「插入/圖表」


STEP.5選擇圖表類型
選擇「XY散佈圖」以及其最終呈現的類型。按下一步。


STEP.6指定資料範圍
確定數據資料取自「欄」,按下「資料範圍」右邊按鈕,跳回資料表。


STEP.7選定資料範圍
用滑鼠左鍵選取所有里程與海拔的數值資料(不含標題欄),之後再按一下圖表精靈的浮動視窗按鍵,回到圖表精靈,並按「下一步」。


STEP.8輸入XY軸數值
X軸請輸入「里程(Km)」,Y軸請輸入「海拔(M)」。



STEP.9取消圖例
選擇「圖例」索引標籤,取消「顯示圖例」選項,以獲得最大畫面空間。
之後請按「下一步」。


STEP.10決定產生圖表方式
請選擇「新的工作表」,按「完成」。


STEP.11生成海拔里程圖

*這時的海拔里程圖還很陽春,看不出每個點所代表的地方。

STEP.12
按 ALT+F11 啟動 Visual Basic 編輯器。
在 [插入] 功能表上,按一下 [模組]。


STEP.13
在模組工作表中輸入下列範例程式碼(請複製橘色文字部分,再貼至編輯器即可):

Sub AttachLabelsToPoints()

'Dimension variables.
Dim Counter As Integer, ChartName As String, xVals As String

' Disable screen updating while the subroutine is run.
Application.ScreenUpdating = False

'Store the formula for the first series in "xVals".
xVals = ActiveChart.SeriesCollection(1).Formula

'Extract the range for the data from xVals.
xVals = Mid(xVals, InStr(InStr(xVals, ","), xVals, _
Mid(Left(xVals, InStr(xVals, "!") - 1), 9)))
xVals = Left(xVals, InStr(InStr(xVals, "!"), xVals, ",") - 1)
Do While Left(xVals, 1) = ","
xVals = Mid(xVals, 2)
Loop

'Attach a label to each data point in the chart.
For Counter = 1 To Range(xVals).Cells.Count
ActiveChart.SeriesCollection(1).Points(Counter).HasDataLabel = _
True
ActiveChart.SeriesCollection(1).Points(Counter).DataLabel.Text = _
Range(xVals).Cells(Counter, 1).Offset(0, -1).Value
Next Counter

End Sub


註:以上程式來自microsoft網站。


按 ALT+Q 返回 Excel。
切換至圖表。

STEP.14
指向 [工具] 功能表上的 [巨集],然後按一下 [巨集]。


STEP.15
按一下 [AttachLabelsToPoints],然後按一下 [執行] 以執行該巨集。


STEP.16
含海拔高度的地名標籤已被附加在原來的海拔里程圖上,不過有些距離較近的標記很顯然擠成一堆,判讀不易。


STEP.17
選取任何重疊的標記,並按住滑鼠左鍵不放調整其位置。
其他想要修改的區域,如底色、字型等,皆可雙擊滑鼠左鍵調整設定選項。



STEP.18大功告成!! YA~


P.S.如果還希望在點與點間標示里程,則利用繪圖工具直接在需要的地方加上文字框即可。

2009/09/25

免費講座:女子單車旅行學-露營篇



日期:2009/09/26 (六)
時間:20: 00~22: 00
地點:高雄市鹽埕區光榮街一號「倉庫自行車學校
主講人:阿水

「軟腳女王單車旅行學」系列終於要進入尾聲了!至今回想起來,令我記憶深刻的單車旅行記憶,往往都和露營有關。如果大家有興趣聽聽「一個忘了野性的都市人學習如何與自然共處」的故事與心得,不妨來倉庫一趟。
其實幾堂講座下來,我發現經常是一群專家在聽我分享菜鳥學習的過程(汗),不過要是這樣能激盪出一些火花、在彼此內心埋下幾顆美麗的種子,也是很棒的經驗呢。那...我該去準備明兒個要用的簡報資料了。哈...

投影片瀏覽
補充:因為投影片原始檔超乎想像地肥大,只好選擇用縮圖的方式來解決,有些字因此會看不清楚,還請大家多多包涵。