簡體   English   中英

Cartopy 在 map 上繪制不需要的線條

[英]Cartopy plotting unwanted lines on map

我對 Python 中的地圖/carto 游戲非常(非常)新手,並且發現 CartoPy 可用的資源枯竭,所以我認為這里有人可以提供幫助。

我有數千個緯度/經度坐標到 plot,分布在 4 條平行線上。

到目前為止,我的代碼是:

import pandas as pd
import numpy as np
import os    

import matplotlib.pyplot as plt
import cartopy.crs as ccrs       
from cartopy import config         
import cartopy.feature as cf        

latcol = [2]
loncol = [3]
df_lat = pd.read_csv(r'G:\Documents\Thesis\Outputs\concat_Xenos_combineds.csv', usecols = latcol)
df_lon = pd.read_csv(r'G:\Documents\Thesis\Outputs\concat_Xenos_combineds.csv', usecols = loncol)

map = plt.figure(figsize=(15,15))
ax = plt.axes(projection=ccrs.EuroPP())
ax.coastlines(resolution='10m')

ax.add_feature(cf.LAND)
ax.add_feature(cf.OCEAN)
ax.add_feature(cf.COASTLINE)
ax.add_feature(cf.BORDERS, linestyle=':')
ax.add_feature(cf.LAKES, alpha=0.5)
ax.add_feature(cf.RIVERS)

ax.plot(df_lon, df_lat, markersize=2, marker='o', color='red', transform=ccrs.PlateCarree())

ax.stock_img()

正如我所說,坐標分布在 4 條平行線上。 但是生產的 plot 像任何東西一樣亂七八糟,到處都是線條:

陰謀

我該如何糾正這個問題?

此外,我有一個第三列,其數值表示每個坐標點處特定特征類型的 value_count,並且最終希望以某種方式將其合並到 map 中(無論是不同大小或顏色的標記還是不同的顏色)。 實現這一目標的最佳方法是什么? 是否值得嘗試做一個熱圖風格的 plot 代替/

需要任何澄清,請不要猶豫!

謝謝, R

要消除標記之間的紅線,請將linestyle='none'傳遞給plot()

關於您的第二個問題,您可能應該使用ax.scatter()並將value_count變量用於顏色。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM