matplotlib / matplotlib/basemap

Contouring bug on lcc projection

Open
#377 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
817
Forks
395
PR merge metrics
No merged PRs in 30d

Description

This same issue is occurring for all data types. Quite often, though not always, one of any of the contoured data will spike sharply downward away from the rest of the contour (seen below in the yellow data). This happens quite often in the middle of the domain.
I doubt this is a problem with the data themselves or my analysis since this error makes the contour line cross other contour lines of the same data. If there were just an anomaly at the bottom of the domain, I would expect there to just be a gradient with the contouring toward it. This makes me think that the problem is all in the plotting.

![slp-007](https://user-images.githubusercontent.com/20845204/32189064-9fe770c6-bd77-11e7-9ab6-7fefa33ff6f9.jpg)

Here's the plotting portion of my code.
`
#Plotting
fig = figure()
map = Basemap(llcrnrlon=-120.,llcrnrlat=20.,urcrnrlon=-50.,urcrnrlat=50.,\
rsphere=(6378137.00,6356752.3142),\
resolution='l',projection='lcc',\
lat_0=40.,lon_0=-98.,\
lat_1=30.,lat_2=60.)

#Draw geographical boundaries
map.drawcoastlines(color='red',linewidth=0.75)
map.drawstates(color='red',linewidth=0.75)
map.drawcountries(color='red',linewidth=0.75)
map.fillcontinents(color='black',lake_color='black')
map.drawmapboundary(fill_color='black')

#Create X-Y plane for contouring and filling on map
X,Y = map(asarray(longitude_grid), asarray(latitude_grid))

#1st Variable#
#------------#

levels = linspace(700., 1200., 126) #4 mb levels for SLP
cs = map.contour(X,Y,var,2,colors='c',linewidths=1.,levels=levels)
clabel(cs, fmt="%1.0f", fontsize=8, inline=1)

#2nd Variable#
#------------#

levels = linspace(0.,12000.,241) #50 m levels for thickness/height
cs = map.contour(X,Y,contr,2,colors='y',linewidths=0.75,levels=levels)
clabel(cs, fmt="%1.0f", fontsize=8, inline=1)

#Snow Contour#
#------------#

cs = map.contour(X,Y,snow,2,colors='w',linewidths=2.,levels=[0.,1.])


title('%s SLP [Blu] and 800-500 mb Height [Ylo] over Snow Line [Wht]' % times[i])

savefig('temp_plot%03d.jpg' % i)
`

Contributor guide

No contributing guide indexed for this repository

Research direction

No repository file or test is named. Start by reproducing the Basemap lcc projection and contour calls shown in the report with the same longitude_grid, latitude_grid, var, contr, and snow inputs; done means determining why contour lines spike or cross unexpectedly and confirming that the corrected plotting behavior no longer shows those artifacts.

Written by the indexing model from the issue text.

Assessment

Tech stack
matplotlib, python
Domain
data-visualization
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.