- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
对于相关图,我希望有一个光学正方形图(x 和 y 的像素长度相同),但 x 和 y 也有一定的轴限制。我可以分别获取这两个,但不能同时获取:
import matplotlib.pyplot as plt
f, (ax1, ax2) = plt.subplots(1, 2)
x = [1 , 4 , 6]
y1 = [4, 7, 9]
y2 = [20, 89, 99]
ax1.plot(x, y1, 'o')
ax2.plot(x, y2, 'o')
myXlim = [0, 8]
ax1.set_xlim(myXlim)
ax2.set_xlim(myXlim)
ax1.axis('square')
ax2.axis('square')
# limit is gone here
ax1.set_xlim(myXlim)
ax2.set_xlim(myXlim)
# square is gone here
plt.show()
如果我只使用 ax1.set_xlim(myXlim)
(而不是 square
),那么我可以手动调整窗口大小以获得我想要的,但我怎样才能自动执行此操作?
最佳答案
获取正方形子图的一个选项是设置子图参数,以便生成的子图自动调整为正方形。这有点复杂,因为需要考虑所有边距和间距。
import matplotlib.pyplot as plt
f, (ax1, ax2) = plt.subplots(1, 2)
x = [1 , 4 , 6]
y1 = [4, 7, 9]
y2 = [20, 89, 99]
def square_subplots(fig):
rows, cols = ax1.get_subplotspec().get_gridspec().get_geometry()
l = fig.subplotpars.left
r = fig.subplotpars.right
t = fig.subplotpars.top
b = fig.subplotpars.bottom
wspace = fig.subplotpars.wspace
hspace = fig.subplotpars.hspace
figw,figh = fig.get_size_inches()
axw = figw*(r-l)/(cols+(cols-1)*wspace)
axh = figh*(t-b)/(rows+(rows-1)*hspace)
axs = min(axw,axh)
w = (1-axs/figw*(cols+(cols-1)*wspace))/2.
h = (1-axs/figh*(rows+(rows-1)*hspace))/2.
fig.subplots_adjust(bottom=h, top=1-h, left=w, right=1-w)
ax1.plot(x, y1, 'o')
ax2.plot(x, y2, 'o')
#f.tight_layout() # optionally call tight_layout first
square_subplots(f)
plt.show()
这里的好处是能够自由缩放和自动缩放。缺点是一旦图形尺寸发生变化,子图尺寸就不再是方形的。为了克服这个缺点,可以另外注册图形大小变化的回调。
import matplotlib.pyplot as plt
f, (ax1, ax2) = plt.subplots(1, 2)
x = [1 , 4 , 6]
y1 = [4, 7, 9]
y2 = [20, 89, 99]
class SquareSubplots():
def __init__(self, fig):
self.fig = fig
self.ax = self.fig.axes[0]
self.figw,self.figh = 0,0
self.params = [self.fig.subplotpars.left,
self.fig.subplotpars.right,
self.fig.subplotpars.top,
self.fig.subplotpars.bottom,
self.fig.subplotpars.wspace,
self.fig.subplotpars.hspace]
self.rows, self.cols = self.ax.get_subplotspec().get_gridspec().get_geometry()
self.update(None)
self.cid = self.fig.canvas.mpl_connect('resize_event', self.update)
def update(self, evt):
figw,figh = self.fig.get_size_inches()
if self.figw != figw or self.figh != figh:
self.figw = figw; self.figh = figh
l,r,t,b,wspace,hspace = self.params
axw = figw*(r-l)/(self.cols+(self.cols-1)*wspace)
axh = figh*(t-b)/(self.rows+(self.rows-1)*hspace)
axs = min(axw,axh)
w = (1-axs/figw*(self.cols+(self.cols-1)*wspace))/2.
h = (1-axs/figh*(self.rows+(self.rows-1)*hspace))/2.
self.fig.subplots_adjust(bottom=h, top=1-h, left=w, right=1-w)
self.fig.canvas.draw_idle()
s = SquareSubplots(f)
ax1.plot(x, y1, 'o')
ax2.plot(x, y2, 'o')
plt.show()
<小时/>
上述解决方案的工作原理是限制子图在其网格内部的空间。相反的方法,即子图的大小以某种方式固定,将显示在 Create equal aspect (square) plot with multiple axes when data limits are different? 的答案中。 .
关于轴 ('square' ) 和 set_xlim 之间的 python 相互作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54655423/
我一直在努力学习 TensorFlow,我注意到不同的函数用于相同的目标。例如,为了平方变量,我看到了 tf.square()、tf.math.square() 和 tf.keras.backend.
我正在创建一个应用程序,我需要在其中显示平方根符号和数字。例如 /¯¯¯¯¯¯¯¯¯¯¯ \/ (v^2) / T 我也希望显示数字的平方。任何人都可以帮助显示此类文本。此文本来自数据库并且可以
我自己无法解决以下问题,所以我搜索并找到了一个可行的算法。有人可以向我解释该算法背后的思维过程、数学或其他内容吗? 类型:https://www.codewars.com/kata/square-in
是否可以使用 Square Connect API 访问有关商家客户的任何信息?最理想的信息是客户为收据输入的电子邮件地址,但某些类型的唯一客户 ID 可以很好地确定回头客。 查看 Square Co
已关闭。此问题需要 debugging details 。目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and the
我正在尝试使用 Font Awesome 堆叠来实现这一点 我试过两种方法,但都很丑。问题是 fa-square 和 fa-square-o 大小不同,所以当你堆叠它们时,它们不会对齐! my fid
这个惊人的code golf answer to 这个数字是 Loeschian 吗?整体而言: Python, 49 bytes lambda n:0in[(n-3*i*i+0j)**.5%1for
这个问题在这里已经有了答案: Is floating point math broken? (31 个回答) 去年关闭。 #include #include using namespace std
我有一个名为Complex的类,它具有实数和虚数的访问器方法,以及将复数表示为字符串的方法和获取复数大小的方法。我在实现最后三个方法 square()(对复数求平方)、modulusSquared()
有没有办法使用 Square Connect API 获取通过网络钩子(Hook)发送的付款 ID 并找到关联的订单 ID? 我发现文档中列出的付款对象 (https://docs.connect.s
你可以有一个父类(super class) Shape,Square 和 Rectangle 是两个子类,但是你可以有 Square 子类 Rectangle,因为 Square 是一个四边相等的特殊
我正在尝试在 Google Search Console 中为 Weebly/Square 网站使用 PageSpeed Insights 并收到错误消息: 灯塔返回错误:NOT_HTML。提供的页面
我有一个包含 A 列和 B 列的数据框。我想创建第三列,它是两列平方和的平方根。 以下是我的示例数据: A B 10 7 10 8 9 8 10 11 13 5 3 0 12 8
给定以下二维点: 213 106.8 214 189 214 293.4 213 324 223 414 我想找到穿过它们的最小二乘垂直轴线的方程。我的计划是得到一个线方程,这样我就可以测试后续点到最
我的 WPF 项目中有一个 UniformGrid 对象,它有 2 行和 3 列,其宽度和高度设置为自动(两个对齐方式都设置为拉伸(stretch))。 这个网格将容纳 6 个正方形,我想尽可能多地填
我发布此问题是因为,我的代码没有在正确的位置停止迭代。谁能让我确定哪里出了问题? 一切工作正常(我一直认为这是现实中的错误。) 问题: 1)在每次迭代中,我都在最小化不幸的是,它没有正确地最小化(非常
“方 block ” 输入 : 棋盘大小 m × n (m, n ∈ {1,...,32}),三元组列表 (i, j, k) , 其中 i ∈ {1,...,m}, j ∈ {1,...,n}, k
我正在尝试为 Square Connect API 开发一个包装器。我正在寻找沙盒帐户或将测试数据导入新帐户的方法,以便我可以快速开始开发方面的工作。 谢谢! 最佳答案 为了供从 Google 登陆这
我有一个任务,我发现它非常困难。任何帮助将不胜感激。 通过创建 Shape 类 Circle、Square 和 Triangle 来构建层次结构。对于这些派生类,创建默认构造函数和构造函数,其参数可以
题目地址: https://leetcode.com/problems/maximal-square/description/ 题目描述 Given a 2D binary matrix fill
我是一名优秀的程序员,十分优秀!