8王子って言うからには
王子っていう単位がある

そんな訳で8王子を求めてみようと
思いました。

解説動画はこちら



さてまずは「王子」という単位を
求めないと行けません。

王子駅と八王子駅がちょうどあるので
これを使いましょう。

この場所の距離の差分を考えると
8王子 - 王子 = 7王子ですね。

これを7で割れば1王子になります。
王子の単位はkmにしましょう。

まずは王子と八王子の住所地を求めます。
GoogleMapで調べてみると

王子駅:東京都北区王子1丁目10−18
prince1

八王子駅:東京都八王子市旭町1丁目
prince8

住所が求まったので次は
緯度経度を求めていきます。

住所地から緯度経度を求めるAPIがあります。
これを使いましょう。

APIをスクレイピングして
データ取得するスクリプトはこうなります。
import requests
from bs4 import BeautifulSoup
import time

url = 'http://www.geocoding.jp/api/'
address = '東京都北区王子1丁目10−18'
res = requests.get(url, params={"v": 1.1, 'q': address})
soup = BeautifulSoup(res.content,'lxml')
lat = soup.find('lat').string
lon = soup.find('lng').string
print('{0},{1}'.format(lat,lon))

time.sleep(5)

address = '東京都八王子市旭町1丁目'
res = requests.get(url, params={"v": 1.1, 'q': address})
soup = BeautifulSoup(res.content,'lxml')
lat = soup.find('lat').string
lon = soup.find('lng').string
print('{0},{1}'.format(lat,lon))
35.754181,139.737059
35.655538,139.339619

はい、これで王子と八王子の
緯度経度が求まりました。

あとは緯度経度から距離を求めるだけですが
めんどーーーーいです。

説明は軽めでコードだけ
次のコードを使えば2地点の緯度経度から
距離(km)を求めることができます。
import numpy as np

prince1 = [35.754181,139.737059]
prince8 = [35.655538,139.339619]

# 球面の定義
ra=6378.140  # equatorial radius (km)
rb=6356.755  # polar radius (km)
F=(ra-rb)/ra    # flattening of the earth

# 測地緯度を化成緯度に変換
rad_lat1=np.radians(prince1[0])
rad_lon1=np.radians(prince1[1])
rad_lat2=np.radians(prince8[0])
rad_lon2=np.radians(prince8[1])

# 球面上の距離の計算 (Spherical Distance:X)
pa=np.arctan(rb/ra*np.tan(rad_lat1))
pb=np.arctan(rb/ra*np.tan(rad_lat2))
xx=np.arccos(np.sin(pa)*np.sin(pb) + np.cos(pa)*np.cos(pb)*np.cos(rad_lon1-rad_lon2))

# 距離補正量
c1=(np.sin(xx)-xx)*(np.sin(pa)+np.sin(pb))**2/np.cos(xx/2)**2
c2=(np.sin(xx)+xx)*(np.sin(pa)-np.sin(pb))**2/np.sin(xx/2)**2
hos = F/8*(c1-c2)

# 距離を求める
km=ra*(xx+hos)
print(km)
37.59603708314175

ということで8-1=7王子が求まりました。
7で割ると・・・


5.37086km

これが1王子ですね。

8王子は
42.96689kmでした!!!


さて、この原点はどこなんだ??
って話になりますよね。

八王子から王子を通ってその先
5.37km辺りに何があるか?

調べてみると足立区です。
雑に直線を引いて距離でみたところ
スクリーンショット 2020-08-29 16.46.48

西新井っぽいです。

西新井って厄除け大師的な
ものありましたよねー

昔の人は
ここら辺から歩いて丁度いい場所を
王子にしていたのかもしれません。

8王子だと疲れてしんどいみたいな。
ここら辺は妄想ですんで
超適当です。

ご参考までに・・・
それでは