proplot-dev / proplot

🎨 A succinct matplotlib wrapper for making beautiful, publication-quality graphics
https://proplot.readthedocs.io
MIT License
1.12k stars 102 forks source link

Grid misplacement #455

Open Koni2020 opened 6 months ago

Koni2020 commented 6 months ago

Description

In some cases, I find that the grid plotted by the pcolormesh function exhibits misplacement at the bottom (as shown in the following figure). However, it only occurs when a large matrix (e. g. 50 x 50 matrix) is used. If a small matrix is used, it performs correctly. Is this a bug? How to fix it?

1714547981163

Code

import numpy as np
import proplot as pplt

ds = np.random.random([50, 50])
fig, axes = pplt.subplots(nrows=1, ncols=1)
axes.pcolormesh(ds)
fig.save('test.png')

Proplot version

matplotlib 3.4.3 proplot 0.9.7

syrte commented 6 months ago

do you get similar problem with matplotlib (without importing proplot)? it could be problem from upstream.

Koni2020 commented 6 months ago

@syrte The matplotlib pcolor function performs correctly. So, what's the upstream?

Code

import numpy as np
import matplotlib.pyplot as plt

ds = np.random.random([50, 50])
plt.pcolor(ds)
plt.savefig('test.png')

Result

test

syrte commented 6 months ago

Would you try this and see it solves the problem

axes.pcolormesh(ds, edgefix=False)
Koni2020 commented 6 months ago

@syrte Thanks for your help. The problem have been solved by passing edgefix=Fasle into the pcolor function.