![見出し画像](https://assets.st-note.com/production/uploads/images/124297484/rectangle_large_type_2_be8423e746ccf833ae688e811faef539.png?width=1200)
地域ねこの行動追跡とTableauによる可視化で分かったこと
以前からずっとやりたかったGPS(Global Positioning System)による外飼いの猫の行動追跡(トラッキング)。ちょっとしたキッカケ※1があったので試してみました。なかなか面白い結果が分かり大満足でした。キッカケって大事だと思いました。
猫
まず、 追跡対象の猫はうちの飼い猫かつ元地域猫のトトちゃん(写真)です。人見知りですが甘えん坊です。ふだんはほぼ私の自宅内で過ごしていますが、自由に内外を出入りしています。嵐の日などに不在になることもあり、どこで過ごしているか気になっていました。
![](https://assets.st-note.com/img/1702275896129-tKKy3A23q9.png?width=1200)
ログ取得装置(ロガー)
GPSの記録を取得する装置は Thanko mini data logger です。小さくて軽いのでお猫の負荷が少ない点が選考ポイントです。その代わりバッテリー容量は小さく、継続期間は半日程度です。また、リアルタイムの追跡はできません。ローカルメモリにデータが保存される形式です。回収後に保存されたファイルをパソコン等にコピーします。猫の首輪に付けるシリコンケースに入れている限りは防滴性能を備えています。
今回は五日間、朝にロガーを猫の首輪にセットしてスイッチを入れ、夜に回収するという流れを繰り返しました。
データの整備
ロガーをUSB経由でコンピュータにつなげると、<日付>.gpxというファイルができています。そのままではTableauでは開けないので下記サイトでKMLへ変換してダウンロードします。他にも変換サイトはありますが、このサイトは2種類のシートを出力してくれます。
https://mygeodata.cloud/converter/gpx-to-kml
視覚化をTableau行う
視覚化はTableau Publicで行います。KMLファイルはGoogle Mapで開くなどの方法がWEB上の記事にありますが、これだと単なるマッピングで終わってしまいます。データ分析をしたり、視覚化をしたり、デザイン性を持たせたりしつつ、マッピングを行えるツールということでTableauが最適と考えました。もちろん、私がTableauにある程度習熟していて、一通りやりたいことのイメージが付くということが判断材料としては大きいです。
TableauでKMLを開くときは空間ファイルを選びます。先ほどの変換済みのKMLファイルを開くと、2つのシート、日付とPointsが含まれています。日付シートには猫が辿ったルートが線になって格納されています。Pointsには位置情報と日時、標高情報などがXML形式で格納されています。Descriptionというフィールドに多くの情報が記録されています。
今回は、Descriptionフィールドをカスタム分割して日時だけ切り出します。そして、こういった海外製のデバイスは記録時刻が協定世界時(Coordinated Universal Time)UTCか、グリニッジ標準時(Greenwich Mean Time Zone)GMTであることがほとんどなので、TableauではDatetime関数で日付時刻形式にした後、日本標準時(JST)に変換するためにDateadd関数を使って9時間を加算し、時差補正をします。以下が計算式です。
DATEADD('hour', 9,
datetime(LEFT(
TRIM(
SPLIT( [Description], "Time:", -1 )
)
,20)
))
空間情報ファイルを開くとジオメトリという地理情報フィールド🌐がデータペインに格納されています。データの中身がどうなっているかは具には分からないのですが、そのフィールドをマークカードの詳細に配置すると、Tableauの地図上にマッピングされます。今回は少し誤差がありつつも自宅周辺の地図に配置されました。
マッピングするだけということで、その他の可視化の操作については割愛します。
公開するにあたっての注意点
GPS位置情報はかなりの詳細です。そのため公開前提のTableau Publicを使って地図に表示すると、住んでいる位置を特定できてしまいます。悪意を持った人を寄せ付けないためにも特定できないようにする必要があります。そこで、メニューのマップ→バックグラウンドレイヤーを開き、全てのチェックを外します。これで地図表示は消えます。また、この設定を悪意を持った人に変えられないように、ワークブックはダウンロード不可に設定しましょう。
Logには秒まで記録されています。初日の記録時間は約5時間でデータ件数は700件ほどでした。ただし、内側で持っているデータが大きいのか、Tableauのマーク数が多いのか、Tableauの動きはかなり遅くなりました。地図への全プロットは大変な負荷になるようです。そこで一日ごとにワークブックを分割する必要がありました。
ということで五日間分のTableauのダッシュボードを紹介します。
Cat act log
一日目の様子です。この猫はふだん自宅で寝ていることが多いので、こんなに激しくは動かないはずです。恐らくGPSの誤差と思います。それでもたまに少し遠くに出歩いているようで面白いです。
ダッシュボードの▶ボタンをクリックすると、時系列順に猫のアイコンと緯度経度のポイントが動きます。
![](https://assets.st-note.com/img/1702276415683-NQalNFLmpf.png?width=1200)
https://public.tableau.com/app/profile/nagnag/viz/Catactlog/Catactlog
二日目の様子です。二拠点生活をおくっていることを強くうかがわせる結果です。これまでも長いあいだ帰ってこないことが時折あり、雨や寒い日などは心配でしたが、もともと地域猫なので居場所があるということだと思います。わたしとしては安心しました。
![](https://assets.st-note.com/img/1702276483200-zpESQX1b4H.png?width=1200)
https://public.tableau.com/app/profile/nagnag/viz/Catactlog_20230924/Catactlog
三日目の様子です。一日中家にいたようです。
![](https://assets.st-note.com/img/1702276534583-x9nIPlZkyM.png?width=1200)
https://public.tableau.com/app/profile/nagnag/viz/Catactlog_20230925/Catactlog
四日目の様子です。昼間は家にいたようです。そして19:30頃に移動しています。少し離れた場所でしばらく過ごして22:00頃に帰って来ています。猫同士の会合でもあったのでしょうか。
![](https://assets.st-note.com/img/1702276550556-moK4Xh6ACS.png?width=1200)
https://public.tableau.com/app/profile/nagnag/viz/Catactlog_20230926/Catactlog
五日目の様子です。今回の実験の最終日です。少し出歩いているように見えますが、滞在はせずに足早に立ち去ったようです。
![](https://assets.st-note.com/img/1702276638776-xHFzLrjHC3.png?width=1200)
https://public.tableau.com/app/profile/nagnag/viz/Catactlog_20230927a/Catactlog
さいごに
LoggerとTableauで簡単に猫の追跡ができました。今回のデバイスは非リアルタイムで充電の持続時間も短く行方不明の探索には向きませんが、自宅以外にも過ごすところがあることなど、今まで分からなかったことが知れてよかったです。
キッカケを作ってくれた関係者の皆さまありがとうございました。
※1 キッカケ:日本Tableauユーザー会(JTUG)のコラボレーション企画チームでData Noodle World Tour!!!という企画を立てて、さまざまなTableauコミュニティに発表の機会を提供して、活性化を図ろうという試みをしていました。Tableauねこ会というTwitter上のコミュニティが呼応しました。筆者もねこ会に入っていたので何か作ろうと思い、今までずっとやりたかったけどなかなか手が付けられていなかった今回の猫の行動追跡をしてみたという経緯です。ちなみにTableauねこ会では、このVizをふくめて、Data Noodle World Tour!!!のアウトプットイベント=Tableau文化祭という発表会でねこVizを展示する予定です。お楽しみに!ちなみにこの投稿もアドベントカレンダーを企画してくれた方がいらっしゃってまとめることになりました。キッカケバンザイ!
※ついでに、Knock Knockはキッカケを現す社名であります。