如何用Python matplotlib绘制包含四个象限的图?
我的目标是画一个有四个象限的图,并在里面标出一些点。同时,我想知道怎么把一个象限再分成几个小区域。在matplotlib中,怎么画一个有四个象限的图呢?x轴的范围是1到9,y轴的范围也是1到9?
3 个回答
1
我建议你看看 AxesGrid
这个工具包:
http://matplotlib.sourceforge.net/mpl_toolkits/axes_grid/index.html
也许这个页面顶部的中间图片就是你想要的那种效果。接下来这个页面的API文档里有一些例子,应该能给你一个不错的起点:
http://matplotlib.sourceforge.net/mpl_toolkits/axes_grid/users/overview.html
如果没有你想做的具体例子,给你最好的建议就会很困难。
4
从问题来看,你似乎想要一个包含多个划分区域的单一图表,并且这些区域有特定的xy范围。这其实很简单。你可以在图上画线来划分你感兴趣的区域。下面是一个根据你所说的目标做的简单示例:
import matplotlib.pyplot as plt
plt.figure()
# Set x-axis range
plt.xlim((1,9))
# Set y-axis range
plt.ylim((1,9))
# Draw lines to split quadrants
plt.plot([5,5],[1,9], linewidth=4, color='red' )
plt.plot([1,9],[5,5], linewidth=4, color='red' )
plt.title('Quadrant plot')
# Draw some sub-regions in upper left quadrant
plt.plot([3,3],[5,9], linewidth=2, color='blue')
plt.plot([1,5],[7,7], linewidth=2, color='blue')
plt.show()