相关疑难解决方法(0)

在Matplotlib中自动重新缩放ylim和xlim

我正在使用matplotlib在Python中绘制数据.我正在根据一些计算更新绘图的数据,并希望ylim和xlim自动重新缩放.相反,发生的是基于初始图的限制来设置比例.MWE是

import random
import matplotlib.pyplot as pyplot

pyplot.ion()

x = range(10)
y = lambda m: [m*random.random() for i in range(10)]

pLine, = pyplot.plot(x, y(1))

for i in range(10):
    pLine.set_ydata(y(i+1))
    pyplot.draw()
Run Code Online (Sandbox Code Playgroud)

第一个绘图命令生成一个图[0,1],我可以看到一切都很好.最后,y数据阵列的[0,10)大部分都大于1,但数字的y限制仍然存在[0,1].

我知道我可以手动更改限制pyplot.ylim(...),但我不知道要改变它们的内容.在for循环中,我可以告诉pyplot缩放限制,就好像它是第一次被绘制一样吗?

python matplotlib

31
推荐指数
1
解决办法
4万
查看次数

Matplotlib自动缩放

我需要使用matplotlib自动获取适合数据的图.这是我给出的代码:

import matplotlib.pyplot as plt
from matplotlib.collections import LineCollection
....
lines = LineCollection(mpl.line_holder, colors=mpl.colorholder , linestyle='solid')
plt.axes().add_collection(lines)
plt.axes().set_aspect('equal', 'datalim')
plt.draw()
plt.show()
Run Code Online (Sandbox Code Playgroud)

这会创建一个绘图,但无论数据是什么,窗口总是相同的(0-~.8),即使所有数据都在该窗口之外.生成的窗口无法缩小,只有在,因此这是一个主要问题.我找不到任何设置任何类型的大小,也无法找到有关默认值的详细信息.我需要窗口自动适应数据,但我找不到任何功能(由于某种原因,autoscale_on(True)不会这样做).数据变化很大,因此设置硬限制不是一种选择.如何才能正确显示?

python plot visualization matplotlib

9
推荐指数
1
解决办法
3万
查看次数

python matplotlib:转置轴的方法

假设我有一个绘图函数,它接受一个axis参数(或返回一个).是否有一些低级方法用于转置整个图,使x轴成为y轴,反之亦然?或者甚至是绘图之前的轴,以便绘图功能通过依赖轴功能正确地完成所有操作(标记)?

我知道如何"手动"执行此操作,但我想知道是否存在允许这种转换的略微隐藏的抽象级别.

matplotlib

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

从图中删除椭圆?

我是Python新手,也是图形新手!问题是我正在实现基于 EKF 地图的定位,并且我想绘制不确定性椭圆。为此,每次我想用所有值更新图形时,我都会调用一个函数调用 animate,其中包含以下内容:

ellipse = matplotlib.patches.Arc([x_B_1[0,0],x_B_1[0,1]],P_B_1[0,0],P_B_1[1,1],x_B_1[0,2]*180/pi,color='green', linewidth='0.5')
ax.add_patch(ellipse)
Run Code Online (Sandbox Code Playgroud)

还有其他一些东西

问题是,通过这样做,图中的所有省略号都饱和了,我变得一团糟(我无法发布该图的图片,因为这是我的第一篇文章,论坛不允许我这样做),我只想最后一个椭圆。

我该怎么做?


我不能这样做,因为图中的所有内容都丢失了,我只想删除椭圆而不是该图中的其余内容,也许这是不可能的...是否有更新椭圆参数的选项我不绘制新的,而是更新已经绘制的?

干杯!

matplotlib ellipse

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

标签 统计

matplotlib ×4

python ×2

ellipse ×1

plot ×1

visualization ×1