मैं इस कोड का उपयोग एक नक्शे पर डेटा की साजिश रचने कर रहा हूँ:matplotlib/Basemap pcolor साजिश में सफेद किनारों को हटा दें
import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt
import matplotlib.cm as cm
from mpl_toolkits.basemap import Basemap
from matplotlib.patches import Polygon
from scipy.io import netcdf
ncfile = netcdf.netcdf_file(myfile.nc,'r')
lon = ncfile.variables['longitude'][:]
lat = ncfile.variables['latitude'][:]
data = ncfile.variables['mydata'][:]
ncfile.close()
m = Basemap(projection='nplaea', boundinglat=40, lon_0=270)
m.drawcoastlines(linewidth=.6, zorder=2)
m.drawparallels(np.arange(-80.,81.,20.), zorder=1)
m.drawmeridians(np.arange(-180.,181.,20.), zorder=1)
cNorm = mpl.colors.Normalize(vmin=0, vmax=np.nanmax(data))
cmap = plt.get_cmap('jet')
lons, lats = np.meshgrid(lon, lat)
x, y = m(lons, lats)
datamap = m.pcolor(x, y, data, zorder=0)
datamap.set_norm(cNorm)
plt.colorbar(datamap, cmap=cmap, norm=cNorm, shrink=0.5)
plt.savefig('figures/map_polar.png', dpi=150, bbox_inches='tight', pad_inches=0.4)
यह इस छवि में परिणाम:
जैसा कि आप देख सकते हैं, वहाँ सफेद अंतराल हैं ग्रिड कोशिकाओं के बीच। मैं उनसे पीछा कैसे छुड़ाऊं?
क्या आप डेटा फ़ाइल को कहीं भी रख सकते हैं? – tacaswell
दुर्भाग्यवश, नहीं, लेकिन यह नियमित रूप से ग्रिड किए गए डेटा को स्थानांतरित करता है .. – HyperCube
जो भी इसके लायक है, मैं यादृच्छिक रूप से जेनरेट (या निरंतर) डेटा का उपयोग करके आपकी समस्या को पुन: उत्पन्न नहीं कर सकता ... matplotlib का आप किस संस्करण का उपयोग कर रहे हैं? शायद यह एक बग तय किया गया है? इसके अलावा, इस मामले में 'पोंकोर्मेश' तेज होगा। 'Pcolor' के बजाय इसका उपयोग करने का प्रयास करें। मुझे संदेह है (?) यह आपकी समस्या को ठीक करेगा, लेकिन यह तेज होना चाहिए, भले ही। –