Matplotlib单选按钮缩放
我的起点是这个链接中的代码:
所有的示例中都有很少的单选按钮。我需要更多的,比如说最多25个。我对代码进行了调整,改变了坐标轴的高度,以便放下更多的按钮:
rax = plt.axes([0.05, 0.1, 0.15, 0.7], axisbg=axcolor)
radio3 = RadioButtons(rax, ('B1', 'B2', 'B3', 'B4', 'B5','B6', 'B7', 'B8', 'B9', 'B10'))
但是这些按钮开始重叠了,增加坐标轴的高度只是让它们变得更大,并没有解决重叠的问题。
我可以通过创建多个单独的单选按钮组来达到我想要的效果,但这样我就需要多个点击回调函数。
所以问题是,我能否调整单选按钮的大小以避免重叠,还是说这个大小是固定的,而这个按钮的数量是超出了最初设计的范围?
1 个回答
0
你可以传递两个选项来控制文本和单选按钮。
labels
A list of matplotlib.text.Text instances
circles
A list of matplotlib.patches.Circle instances
你可以选择不传递
('B1', 'B2', 'B3', 'B4', 'B5','B6', 'B7', 'B8', 'B9', 'B10')
如果你只关心文本的话,可以把每个列表元素改成类似这样的:
matplotlib.text.Text(text='B1',fontproperties={'size':12})
如果你在意圆圈的大小,那就传递类似这样的内容:
circles = matplotlib.patches.Circle((0,0), radius=5)
我个人建议让圆圈自己处理,只需要改变文本就可以了。