メむンコンテンツぞスキップ
芋出し画像

Code Interpreterで日本地図を描く、階玚に区分し色分け、郜道府県・垂町村圓おゲヌム

    ChatGPTのCode Interpreterで、日本地図をどのように扱うこずができるか確認しおみたした。

    日本地図を描く

    Code Interpreterのラむブラリには、詳现な日本地図を描く情報はなく、日本地図のデヌタをアップする必芁がありたす。
    このnoteでは、囜土数倀情報ダりンロヌドサむトからgeojsonをダりンロヌドする方法ず、japanmapずいうラむブラリを䜿う方法を玹介したす。

    a) 囜土数倀情報ダりンロヌドサむトを䜿う方法

    囜土数倀情報ダりンロヌドサむトの行政区域情報のペヌゞから、党囜(N03-20230101_GML.zip)をダりンロヌドしたす。
    このzipファむルを解凍するず、「N03-23_230101.geojson」ずいうjsonファむルが入っおいたす。
    このjsonファむルは、サむズが倧きいため、mapshaperずいうサむトで軜量化したす。軜量化する手順は次のずおりです。

    1.  mapshaperにアクセスし、jsonファむルをアップロヌド、importボタンをクリックする。
    2. 右䞊のSimplifyをクリックし、ポップアップが衚瀺されるのでApplyをクリックする。
    3. 䞊のSettingsで軜量化するパヌセンテヌゞを遞ぶ。小さい数字を遞べば遞ぶほど軜量化される、今回は1%を遞択しおみたした
    4. 右䞊のExportをクリックする。
    5. GeoJsonボタンが遞択されおいるのを確認し、Exportをクリックする。
    6. 軜量化されたgeojsonファむルがダりンロヌドできる。

    これにより、704MBあったファむルを、34MBたで軜量化するこずができたした。
    これをアップするこずで、Code Interpreterで日本地図を扱うこずができたす。

    GeoPandasでこのデヌタを読み蟌んでください。

    ず指瀺するず、読み蟌たれ、最初の5行が衚瀺されたした。

    画像

    先頭5行は札幌のデヌタになっおいるこずがわかりたす。

    このデヌタから、日本の癜地図を描いおください。
    画像
    日本の癜地図

    日本地図を描くこずができたした。

    b) japanmapを䜿う方法

    japanmapずいう、日本地図のラむブラリを䜿う方法です。japanmapのGithubペヌゞにアクセスし、Download ZIPからこのラむブラリをzipでダりンロヌドしたす。DownloadZIPは、䞋の画像の参考に探しお䞋さい。

    画像
    Githubの画面

    ダりンロヌドしたzipファむルをCodeInterpreterにアップし、次のように指瀺するこずで日本地図を描くこずができたす。

    これはjapanmapラむブラリのzipファむルです。
    これを、/mnt/data/ ディレクトリに解凍しおください。
    
    その埌、次のコヌドを実行しおください。
    
    ```
    # Adding the path of the extracted library to sys.path
    import sys
    sys.path.append('/mnt/data/japanmap-master')
    
    # Attempting to import the library and use it as instructed
    try:
        import matplotlib.pyplot as plt
        from japanmap import picture, get_data, pref_map
        
        # Create a picture without coloring any prefecture
        pct = picture({})
        plt.imshow(pct)  # show graphics
        plt.show()
    
    except Exception as e:
        error_message = str(e)
    ```
    
    このコヌドが実行できるこずを私は経隓しおいたす。実行の危険性もありたせんので、実行しおみおください。


    画像
    日本地図

    デヌタを読み蟌んで、階玚に区分し色分けしお日本地図に衚瀺する

    Podcastの聎取割合を地図䞊に衚瀺するのを䞖界地図でもやりたしたが、今回は日本地図でやっおみたす。
    私がPodcastを配信しおいるSpotifyでは、リスナヌの郜道府県別のデヌタをダりンロヌドするこずができたす。デヌタは東京がtokyoになっおいるなどアルファベット衚蚘になっおおり、今回は手䜜業で日本語に修正した埌、読み蟌みたした。

    これはpodcastのリスナヌが、 どの郜道府県から聞いおいるかを集蚈したデヌタです。
    これを分析し、先ほどの日本地図に階玚区分図ずしお衚瀺しお䞋さい。
    なお䞋の線ず巊の線、たた0から600の数字は衚瀺する必芁はありたせん。

    衚瀺するこずができたした。

    画像

    郜道府県圓おゲヌム

    䞖界地図の堎合ず同じように、郜道府県あおゲヌムができたす。
    もぐら3.0さんが詊しおくれたした。
    プロンプトは、䞖界地図の堎合ず同じようにこのような感じです。

    これから郜道府県を圓おるゲヌムをしたしょう
    あなたは、日本地図から぀の郜道府県を遞んで着色し、衚瀺したす。
    それがどの郜道府県か私に質問しおください。
    
    私は郜道府県を回答したすので、正解・䞍正解を教えおください。

    カレヌちゃんの囜圓おゲヌムを䜜るブログを芋お、郜道府県名を圓おる日本地図バヌゞョンを䜜っおみた。カレヌちゃんのCode Interpreterの色々な怜蚌が非垞に有益。

    Code Interpreterで䞖界地図を描く、階玚区分図を䜜る、囜圓おゲヌムカレヌちゃん @currypurin #note https://t.co/iioMhXjK6o pic.twitter.com/uVhma9KfXh

    — もぐら 3.0 (@beans_crypto) July 15, 2023

    垂町村圓おゲヌム

    囜土数倀情報ダりンロヌドサむトの地図情報を䜿う堎合は、垂町村の情報も含たれおいるので、垂町村を圓おるゲヌムをさせるこずができたす。
    プロンプトは、次のようにしたした。

    それではこれから郜垂あおゲヌムをしたしょう。
    あなたは、どこかの垂町村を赀くマヌクし呚りの垂町村の圢もわかる皋床に拡倧し、その郜垂の明産物などの特色ずずもに、この郜垂はどこでしょうかず問題を出したす。
    私はそれを回答したすので、正解・䞍正解を回答しおください。


    画像
    郜垂名宛おクむズ

    たずめ

    今回は、日本地図を描く方法を詊しおみたした。
    デヌタを地図䞊に衚瀺したい堎面は倚く、その際に䜿える方法だず思いたす。

     
     
    面倒なこずはChatGPTにやらせよう・Kaggleスタヌトブック・Kaggleのチュヌトリアルを執筆/ KaggleGrandMaster / 毎週月曜配信 / 芁望や質問などなんでもhttp://marshmallow-qa.com/currypurin / サンリオ

    あなたぞのおすすめ