如何使用matplotlib将x(x)绘制为无穷大?

Ric*_*son 5 python matplotlib

我正在绘制一些数据点的曲线:

points = [[0.0, 0.0], [1, 3], [3, 5]]
Run Code Online (Sandbox Code Playgroud)

......当x变为无穷大时,我希望它达到,例如,y = 10 .换句话说,追加的额外"点"将是:[float('inf'), 10]

有没有办法告诉你matplotlib绘制曲线最后一部分的渐近行为?

Matplotlib无视float('info'),所以我想应该有另一种方法来做到这一点.

mmd*_*ger 5

您无法绘制无穷大的函数,因为它不是数字.我认为实现所需效果的唯一方法是使用断轴并将数据点绘制在某个任意大的数字上.官方matplotlib网站提供了如何破碎图的示例.

基本的想法是创建两个带有巧妙去除边框的子图,以便看起来像一个图,然后添加一些花哨的对角线,使其看起来像一个传统的"破碎"图.您可以通过替换足够大的数字(使曲线看起来正确)在自己的子图中绘制无穷大数据点.然后只需将tick重新标记为无穷大(ax.set_xticks([large_number]) ax.set_xticklabels(['\infty']),假设ax是第二个只有你的无限点的情节)并且你在做生意!

我最近使用上面例子的修改形式绘制了一个"无限远"点.我有代码执行此操作,但它充满了对我的特定数据的引用,因此它可能对您和官方示例有帮助.