我正在尝试使用matplotlib将散点图叠加在等高线图上,其中包含
plt.contourf(X, Y, XYprof.T, self.nLevels, extent=extentYPY, \
origin = 'lower')
if self.doScatter == True and len(xyScatter['y']) != 0:
plt.scatter(xyScatter['x'], xyScatter['y'], \
s=dSize, c=myColor, marker='.', edgecolor='none')
plt.xlim(-xLimHist, xLimHist)
plt.ylim(-yLimHist, yLimHist)
plt.xlabel(r'$x$')
plt.ylabel(r'$y$')
最终的情况是产生的图形会延伸以包括所有散点,这可能超出轮廓图的范围。有没有什么方法可以解决这个问题?
xLimHist
和yLimHist
的值,并展示它们是如何/在哪里计算的吗?当我制作自己的等高线图并叠加散点时,你的代码可以正常工作。如果我以一种排除某些散点的方式定义xLimHist
和yLimHist
,那么图形确实会排除这些点,并且它不会适应包含所有散点。因此,我的猜测是你错误地定义了xLimHist
和yLimHist
。 - ely