相关疑难解决方法(0)

定义我的轴的限制,但在两个方向上具有相同的比例

我如何结合这些陈述:

pyplot.axis([1234.0, 1773.0, 497.0, 1362.0])
pyplot.axis('equal')
Run Code Online (Sandbox Code Playgroud)

我只想定义轴的限制,但在两个方向上具有相同的比例。

PS:我尝试过pyplot.axis([1234.0, 1773.0, 497.0, 1362.0], 'equal'),但没有成功。

python axis matplotlib

5
推荐指数
1
解决办法
3268
查看次数

matplotlib:在不更改纵横比的情况下设置图形的宽度或高度

我想选择一个图形的宽度,同时仍然让matplotlib选择它认为合适的纵横比。我知道的更改图形大小的每种方法都需要一个(宽度,高度)元组,该元组强制具有一定的宽高比。有什么方法可以仅指定宽度(或仅高度)并允许matplotlib选择合适的宽高比?

python matplotlib

3
推荐指数
2
解决办法
5004
查看次数

在Matplotlib中检查轴刻度

有没有简单的方法来检查matplotlib中的轴是否为对数/线性轴?

如果键入ax.transData.__dict__(ax为semilogy),则会得到:

{'_a': TransformWrapper(BlendedGenericTransform(IdentityTransform(),<matplotlib.scale.Log10Transform object at 0x10ffb3650>)),
 '_b': CompositeGenericTransform(BboxTransformFrom(TransformedBbox(Bbox('array([[  0.00000000e+00,   1.00000000e+00],\n       [  2.00000000e+03,   1.00000000e+08]])'), TransformWrapper(BlendedGenericTransform(IdentityTransform(),<matplotlib.scale.Log10Transform object at 0x10ffb3650>)))), BboxTransformTo(TransformedBbox(Bbox('array([[ 0.05482517,  0.05046296],\n       [ 0.96250543,  0.95810185]])'), BboxTransformTo(TransformedBbox(Bbox('array([[ 0.,  0.],\n       [ 8.,  6.]])'), Affine2D(array([[ 80.,   0.,   0.],
       [  0.,  80.,   0.],
       [  0.,   0.,   1.]]))))))),
 '_invalid': 2,
 '_parents': <WeakValueDictionary at 4572332904>,
 '_shorthand_name': '',
 'input_dims': 2,
 'output_dims': 2}
Run Code Online (Sandbox Code Playgroud)

我可以编写一种方法来检查子转换ax.transData._a._child是否为对数刻度,但是我不喜欢它访问私有变量,而且由于变量名称可以更改,因此它似乎相当不可持续。

python matplotlib

1
推荐指数
1
解决办法
583
查看次数

Imshow 方面效果不佳

我进行数值模拟,但我的绘图有问题...我的模拟区域的6x35\xc2\xb5m分辨率为640x1024px. \n当我想使用 绘制模拟数据imshow并设置纵横比时:aspect=6/35时,绘图的高度是正确的,但太长了?我究竟做错了什么?

\n\n

图片中:

\n\n

top:模拟掩模,所有图应具有相同的纵横比。

\n\n

middle:方面设置为手动设置为模拟遮罩的方面(6/35)

\n\n

bottom:方面设置为1

\n\n

在此输入图像描述

\n\n

这是我的代码

\n\n
fig = pl.figure(num=None, figsize=(10, 10))\nax = fig.add_subplot(1,1,1)\nimg = ax.imshow(data, aspect=6./35)\n
Run Code Online (Sandbox Code Playgroud)\n

python matplotlib aspect-ratio imshow

1
推荐指数
1
解决办法
2439
查看次数

绘图的纵横比

我尝试在 python 中更改我的纵横比。我知道这已经在许多其他情况下讨论过(例如使用 figaspect),但我并没有像我想要的那样得到它。如果我使用 figaspect,我会收到错误消息:

'Figure' object is not callable.

没有它我有这个代码:

fig, ax = plt.subplots()

ax.plot(y_test1, linewidth=0.5, linestyle="-", label='Test1')
ax.plot(y_test2, linewidth=0.5, linestyle="-", label='Test2') 
legend = ax.legend(loc='right center',prop={'size': 5}, shadow=True, fontsize='medium')
plt.xlabel('images')
plt.ylabel('error')
plt.grid()
plt.axis([0,100, 0, 20])
Run Code Online (Sandbox Code Playgroud)

它有效,但我需要其他宽高比。如何获得比高度宽三倍的图?

python matplotlib python-3.x

1
推荐指数
1
解决办法
8058
查看次数

标签 统计

matplotlib ×5

python ×5

aspect-ratio ×1

axis ×1

imshow ×1

python-3.x ×1