メインコンテンツへスキップ

Code Interpreterで世界地図を描く、階級区分図を作る、国当てゲーム

    ChatGPTのCode Interpreterで、地理情報をどのように扱うことができるか確認してみました。

    世界地図を描く

    Code Interpreterには、「GeoPandas」というライブラリが入っており、これで世界地図を描くことができます。
    「世界地図を描いてくださいと」と指示すると、次の地図を描いてくれます。

    画像
    世界地図

    たまに、次のようにインターネット接続がないため、実行できないと言われることがあります。

    画像

    その場合は、「失敗しても構わないので」次のコードを実行してと伝えることで表示してもらうことができます。

    import geopandas as gpd
    import matplotlib.pyplot as plt
    
    # Load the world map
    world = gpd.read_file(gpd.datasets.get_path('naturalearth_lowres'))
    
    # Plot the world map
    world.plot()
    plt.show()


    画像

    国に色をつけて表示することも可能です。
    例えば、オーストラリアに色をつけてくださいというと、次のようにオーストラリアに色をつけてくれます。

    画像
    オーストラリアに色をつけた世界地図

    国当てゲーム

    国に色を塗ることができるので、ChatGPTに国に色を塗ってもらい、色を当てるゲームを考えてみました。

    プロンプトは、次のとおり

    これから国名を当てるゲームをしましょう
    あなたは、世界地図から1つの国を選んで着色し、拡大して表示します。
    どこの国か私に質問してください。
    
    私は国名を回答しますので、正解・不正解を教えてください。

    質問が出されました。

    画像
    国当てゲームの問題

    これは簡単な問題だったので正解することができた。

    画像
    国当てゲームの回答

    データを読み込んで、世界地図上に階級区分図を作成

    Podcastの聴取国率を示したデータを読み込んで表示してみました。(私がPodcastを配信しているSpotifyでは、リスナーの地域別のデータをダウンロードすることができます)

    これはpodcastの国ごとの聴取割合を示すデータです。 先ほどの地図に色をつけて表示してください。

    プロンプト
    画像
    podcastの聴取割合

    たまにうまくいかない場合があったので、その場合は英語で指示すると良いようです。ChatGPTに聞いたところ次のプロンプトが良いとのことでした。

    "Please load the world map using GeoPandas."
    "I'm going to upload a CSV file that contains podcast listening rates by country. Please load this data into a DataFrame."
    "Please merge this data with the world map data."
    "Now, please create a choropleth map using the merged data. Use the listening rates to determine the color of each country. Represent missing values as light grey."


    日本地図

    (日本地図については、別記事で書きます)

    日本地図を扱うのは、インターネット環境がないので今の所難しいようです。
    世界地図の日本地図部分は拡大して、表示してくれました。

    画像
    世界地図の日本地図部分を拡大して表示


    まとめ

    GeoPandasというライブラリがあったので、世界地図を表示して、データを表示したり、国を当てるゲームをしたりすることができました。

    残念ながら、日本地図はライブラリがないため、拡大した地図を表示できるだけだと思います。

    失敗した図

    GeoPandasがインターネット使えないというので、曖昧でも良いから描いてといったら、すご~~く曖昧な世界地図と日本地図を描いてきたもの。
    matplotlibで描くのは、無理だと思いました。

    Code Interpreter先生、いくらなんでもその地図は簡単がすぎると思う。 pic.twitter.com/Wz1aPvnIC3

    — カレーちゃん🍮 (@currypurin) July 14, 2023


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

    あなたへのおすすめ