Python pylab中表的子批次
我正在寻找一种方法来创建包含多个子图的图形,这些子图是表。让我试着解释一下我在说什么。下图中有几个子图,这些子图是Python pylab中表的子批次,python,matplotlib,Python,Matplotlib,我正在寻找一种方法来创建包含多个子图的图形,这些子图是表。让我试着解释一下我在说什么。下图中有几个子图,这些子图是imshow图。我想要完全相同的数字,但我想要的不是“imshow”图,而是表格,只是普通表格。在我的示例中,它们只显示值1和2: [1, 2] [2, 1] 我该怎么做 先谢谢你 下面是我用来生成图形的代码 import pylab import numpy as np x = np.array([[1,2],[2,1]]) fig = pylab.figure() fi
imshow
图。我想要完全相同的数字,但我想要的不是“imshow”图,而是表格,只是普通表格。在我的示例中,它们只显示值1和2:
[1, 2]
[2, 1]
我该怎么做
先谢谢你
下面是我用来生成图形的代码
import pylab
import numpy as np
x = np.array([[1,2],[2,1]])
fig = pylab.figure()
fig_list = []
for i in xrange(5):
fig_list.append( fig.add_subplot(2,3,i+1) )
fig_list[i] = pylab.imshow(x)
pylab.savefig('my_fig.pdf')
pylab.show()
您可以使用pylab.table命令,找到文档 例如:
import pylab
import numpy as np
x = [[1,2],[2,1]]
fig = pylab.figure()
axes_list = []
table_list = []
for i in xrange(5):
axes_list.append( fig.add_subplot(2,3,i+1) )
axes_list[i].set_xticks([])
axes_list[i].set_yticks([])
axes_list[i].set_frame_on(False)
table_list.append(pylab.table(cellText=x,colLabels = ['col']*2,rowLabels=['row']*2,colWidths = [0.3]*2,loc='center'))
pylab.savefig('my_fig.pdf')
pylab.show()
我还创建了一个额外的列表变量,并重命名了fig_列表,因为轴实例被打印对象的实例覆盖。现在您可以访问这两个句柄
其他有用的命令包括:
# Specify a title for the plot
axes_list[i].set_title('test')
# Specify the axes size and position
axes_list[i].set_position([left, bottom, width, height])
# The affect of the above set_position can be seen by turning the axes frame on, like so:
axes_list[i].set_frame_on(True)
文件:
fig\u list[i]。将\u frame\u设置为on(False)
删除轴框架。我在示例中添加了这一点。此外,您还可以将行标签和协作标签用于行和列的标签。谢谢。不过我有一个问题,你知道如何给这些表格命名吗set_title()
不适用于表,您知道一些方法吗?再次感谢。set_title()
应该可以在Axis实例上使用。axes文档位于。基本上,轴是图形内部的一个区域,您可以在其中绘制艺术家(或其他对象)。通常是直线图或类似图,但在本例中是表格。每个表都有自己的轴实例<代码>轴列表[i]。设置标题(“测试”)应该可以工作。另外,请注意,set\u position([left,bottom,width,height])
命令可用于更改轴的大小,这将使标题更接近表格。这太完美了!你真的帮了我。非常感谢你!