5 python matlab plot graph matplotlib
我正在尝试使用hexbin在方轴上绘制一些数据.我使用以下内容:
import matplotlib.cm as cm
plt.figure()
num_pts = 1000
x = rand(num_pts) * 100
y = rand(num_pts) * 250
x_min = 0
x_max = 150
x_step = 25
y_min = 50
y_max = 300
y_step = 50
s = plt.subplot(1,1,1)
plt.hexbin(x,y,cmap=cm.jet,gridsize=20)
plt.xticks(range(x_min,x_max+x_step,x_step))
plt.yticks(range(y_min,y_max+y_step,y_step))
# square axes
s.axes.set_aspect(1/s.axes.get_data_ratio())
Run Code Online (Sandbox Code Playgroud)
我希望轴是方形的,我想设置我自己的xticks/yticks和xy限制.对于某些轴值,不会有数据,因此hexbin计算的计数应为零 - 我希望hexbin将其绘制为空白空间,而不是将其保留为"白色"/空白如果使用cm.jet色彩映射.
我现在得到的是这个.
如何使用其色彩图填充空白区域?谢谢.
小智 9
我相信答案是使用extent = keyword参数,如:
plt.hexbin(x, y, cmap=cm.jet, gridsize = 20, extent=[x_min, x_max, y_min, y_max])
Run Code Online (Sandbox Code Playgroud)
小智 5
您也可以只创建一个轴并将其背景颜色设置为最小颜色图值(或您想要的任何颜色):
fig = plt.figure()
ax = fig.add_subplot(111,axisbg=cm.jet(0))
Run Code Online (Sandbox Code Playgroud)