繁体   English   中英

如何使用matplotlib小部件塑造按钮?

[英]How can i shape a button with matplotlib widget?

我想平滑按钮的边缘,更改默认的矩形形状。

这是我用来创建按钮的代码:

axImg = plt.axes([0.25, 0.45, 0.2, 0.09])

bnI = Button(axImg, 'Enter', color='0.9')

bnI.hovercolor = "blue"

bnI.label.set_fontsize(18),

您无法对按钮本身进行整形,因为它基本上只是一个轴,轴是矩形的。 (当然,人们可以使用不同的轴,比如极轴,但那将是完全圆的。)

然而,可以将FancyBboxPatch放入轴中,并给出一些圆边。

import matplotlib.pyplot as plt
from matplotlib.widgets import Button
import matplotlib.patches as mpatches

bttn_ax = plt.axes([0.25, 0.45, 0.2, 0.09])
bttn_ax.set_frame_on(False)

bttn = Button(bttn_ax, 'Enter')
bttn.label.set_fontsize(18)

fancybox = mpatches.FancyBboxPatch((0,0), 1,1, 
                                   edgecolor="black",
                                   facecolor="0.9",
                                   boxstyle="round,pad=0.1", 
                                   mutation_aspect=3, 
                                   transform=bttn_ax.transAxes, clip_on=False)
bttn_ax.add_patch(fancybox)

bttn.on_clicked(lambda x: print("Click!"))

plt.show()

在此输入图像描述

请注意,在这种情况下悬停不起作用,因为显示的是补丁,而不是轴。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM