よろしくお願いします
エクセルからデータを読んで地図に場所をプロットしてそのラベルをマークの上に書きたい
##しかしラベルがうまくプロットされない
各マーカーの上にnameのリスト全てがプロットされる
コードを確認の上ご助言をいただければ幸いです
import pandas as pd import csv import matplotlib.pyplot as plt ![イメージ説明](fbc6304105870f7e309250bf749a22bf.png) import cartopy.crs as ccrs import cartopy.feature as cfeature df = pd.read_excel('./seismogram.xlsx') lon = df['longitude'].to_list() lat = df['latitude '].to_list() name = (df['code']).to_list() def main(): fig = plt.figure(figsize=(15,15)) plt.rcParams["font.size"] = 18 ax = fig.add_subplot(1,1,1, projection=ccrs.PlateCarree()) ax.set_extent([128, 133, 30, 35], crs=ccrs.PlateCarree()) ax.set_title("Japan") ax.coastlines(resolution='10m') ax.add_feature(cfeature.BORDERS, linestyle=':') ax.stock_img() return fig, ax fig, ax = main() ax.scatter(lon, lat, color="r", marker="o", s = 15) zip_object = zip(lon, lat, name) for (lg, lt, ne) in zip_object: ax.text(lg - .05, lt + .05, name, va='center', ha='right', transform=ccrs.Geodetic(), fontweight='bold') plt.show() fig.savefig('XXX.png', format='png', dpi=360)
あなたの回答
tips
プレビュー