Reputation: 399
the problem is basemap/matplotlib plots a given text always on the lower left corner...
i tried many ways but that doesnt work:
# Set up plot
fig, ax = plt.subplots(figsize=(15,15))
m1 = Basemap(projection='merc',
llcrnrlat=8.3,
urcrnrlat=53.9,
llcrnrlon=94.0,
urcrnrlon=147.6,
lat_ts=0,
resolution='c')
m1.fillcontinents(color='#191919',lake_color='#000000') # dark grey land, black lakes
m1.drawmapboundary(fill_color='#000000') # black background
m1.drawcountries(linewidth=0.1, color="w") # thin white line for country borders
m1.drawstates(linewidth=0.1, color="w")
# Plot the data
mxy = m1(new_results["Longitude"].tolist(), new_results["Latitude"].tolist())
m1.scatter(mxy[0], mxy[1], s=300,c=np.divide(new_results["SumVolume"],100000000), lw=0, alpha=1, zorder=5,cmap='Reds')
ax.annotate("blablabla", (121.597366,25.105497),color='green')
#colorbar
plt.colorbar(label=r'24H Trading-Volume in MillionK$')
plt.clim(1, 21)
plt.title("Cryptocurrency capital movement - Asia")
The Plot:
Whats the problem?
ax.annotate("blablabla", (121.597366,25.105497),color='green')
doesnt work like i want. the coordinates (121.597366,25.105497) is one point on the map. By the way, it does not matter which X, Y. He always writes it in the bottom left corner
Upvotes: 3
Views: 1379
Reputation: 18812
As my comment has been confirmed, I should conclude that the fix to the problem is concerning coordinate transformation. And the new code for the troubled part is:
ax.annotate("blablabla", m1(121.597366,25.105497),color='green')
Upvotes: 3