使用python画出逻辑斯蒂映射(logistic map)中的分叉图案例

逻辑斯蒂映射在混沌数学中是一个很经典的例子,它可以说明混沌可以从很简单的非线性方程中产生。

逻辑斯蒂映射公式如下:

x_n表示当前人口与最大人口数量的比值,mu为参数,相当于人口增长速率。

分叉图描绘的是不同mu情况下,x收敛的值的分布图。

参考地址

python代码如下:

from tqdm import tqdm
import matplotlib.pyplot as plt
import numpy as np
def LogisticMap():
 mu = np.arange(2, 4, 0.0001)
 x = 0.2 # 初值
 iters = 1000 # 不进行输出的迭代次数
 last = 100 # 最后画出结果的迭代次数
 for i in tqdm(range(iters+last)):
  x = mu * x * (1 - x)
  if i >= iters:
   plt.plot(mu, x, ',k', alpha=0.25) # alpha设置透明度
 plt.show()
LogisticMap()

结果图:

补充知识:用Python画Logistic函数图像

我就废话不多说了,大家还是直接看代码吧~

import matplotlib.pyplot as plt
import numpy as np
x = np.arange(0,1,0.01)
y = ln(x/(1-x))
plt.plot(y,x)

以上这篇使用python画出逻辑斯蒂映射(logistic map)中的分叉图案例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • Python语言描述机器学习之Logistic回归算法

    本文介绍机器学习中的Logistic回归算法,我们使用这个算法来给数据进行分类.Logistic回归算法同样是需要通过样本空间学习的监督学习算法,并且适用于数值型和标称型数据,例如,我们需要根据输入数据的特征值(数值型)的大小来判断数据是某种分类或者不是某种分类. 一.样本数据 在我们的例子中,我们有这样一些样本数据: 样本数据有3个特征值:X0X0,X1X1,X2X2 我们通过这3个特征值中的X1X1和X2X2来判断数据是否符合要求,即符合要求的为1,不符合要求的为0. 样本数据分类存放在一个

  • python中map的基本用法示例

    map()函数 map() 会根据提供的函数对指定序列做映射,是内置函数 第一个参数 function 以参数序列中的每一个元素调用 function 函数,返回包含每次 function 函数返回值的新列表. 语法 map(function, iterable, ...) map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回. 1.当seq只有一个时,将函数func作用于这个seq

  • 详解Python map函数及Python map()函数的用法

    python map函数 map()函数 map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回. 例如,对于list [1, 2, 3, 4, 5, 6, 7, 8, 9] 如果希望把list的每个元素都作平方,就可以用map()函数: 因此,我们只需要传入函数f(x)=x*x,就可以利用map()函数完成这个计算: def f(x): return x*x print map(f,

  • python实现Pyecharts实现动态地图(Map、Geo)

    一些经常画图的开发人员大概都用过echart,不过小白用Python比较多,学习了python下的Pyecharts,发现这个包真的很强大.下面是小白对动态地图的实践案例: 假如有这样一组数据,全国每个城市的酒店数(虚拟),那么如何在地图上展示呢? 1.Python需要安装Pycharts 当安装完成后需要添加地图包: 安装pyecharts后还需要根据需要安装城市.省份等地图包,下面是对包的整理,大家可以根据需要下载. pip install pyecharts pip install ech

  • 使用python画出逻辑斯蒂映射(logistic map)中的分叉图案例

    逻辑斯蒂映射在混沌数学中是一个很经典的例子,它可以说明混沌可以从很简单的非线性方程中产生. 逻辑斯蒂映射公式如下: x_n表示当前人口与最大人口数量的比值,mu为参数,相当于人口增长速率. 分叉图描绘的是不同mu情况下,x收敛的值的分布图. 参考地址 python代码如下: from tqdm import tqdm import matplotlib.pyplot as plt import numpy as np def LogisticMap(): mu = np.arange(2, 4,

  • python回归分析逻辑斯蒂模型之多分类任务详解

    目录 逻辑斯蒂回归模型多分类任务 1.ovr策略 2.one vs one策略 3.softmax策略 逻辑斯蒂回归模型多分类案例实现 逻辑斯蒂回归模型多分类任务 上节中,我们使用逻辑斯蒂回归完成了二分类任务,针对多分类任务,我们可以采用以下措施,进行分类. 我们以三分类任务为例,类别分别为a,b,c. 1.ovr策略 我们可以训练a类别,非a类别的分类器,确认未来的样本是否为a类: 同理,可以训练b类别,非b类别的分类器,确认未来的样本是否为b类: 同理,可以训练c类别,非c类别的分类器,确认

  • PyTorch零基础入门之逻辑斯蒂回归

    目录 学习总结 一.sigmoid函数 二.和Linear的区别 三.逻辑斯蒂回归(分类)PyTorch实现 Reference 学习总结 (1)和上一讲的模型训练是类似的,只是在线性模型的基础上加个sigmoid,然后loss函数改为交叉熵BCE函数(当然也可以用其他函数),另外一开始的数据y_data也从数值改为类别0和1(本例为二分类,注意x_data和y_data这里也是矩阵的形式). 一.sigmoid函数 logistic function是一种sigmoid函数(还有其他sigmo

  • 使用Python画出小人发射爱心的代码

    我就废话不多说了,直接上代码吧! #2.14 from turtle import * from time import sleep def go_to(x, y): up() goto(x, y) down() def head(x,y,r): go_to(x,y) speed(1) circle(r) leg(x,y) def leg(x,y): right(90) forward(180) right(30) forward(100) left(120) go_to(x,y-180) fo

  • 利用python画出AUC曲线的实例

    以load_breast_cancer数据集为例,模型细节不重要,重点是画AUC的代码. 直接上代码: from sklearn.datasets import load_breast_cancer from sklearn import metrics from sklearn.ensemble import RandomForestClassifier from sklearn.model_selection import train_test_split import pylab as p

  • python 画出使用分类器得到的决策边界

    获取数据集,并画图代码如下: import numpy as np from sklearn.datasets import make_moons import matplotlib.pyplot as plt # 手动生成一个随机的平面点分布,并画出来 np.random.seed(0) X, y = make_moons(200, noise=0.20) plt.scatter(X[:,0], X[:,1], s=40, c=y, cmap=plt.cm.Spectral) plt.show

  • python画出三角形外接圆和内切圆的方法

    刚看了<最强大脑>中英对决,其中难度最大的项目需要选手先脑补泰森多边形,再找出完全相同的两个泰森多边形.在惊呆且感叹自身头脑愚笨的同时,不免手痒想要借助电脑弄个图出来看看,闲来无事吹吹牛也是极好的. 今天先来画画外接圆和内切圆,留个大坑后面来填. 外接圆圆心:三角形垂直平分线的交点. 内切圆圆心:三角形角平分线的交点. 有了思路,就可以用万能的python来计算了 import matplotlib.pyplot as plt from scipy.linalg import solve im

  • 利用python画出折线图

    本文实例为大家分享了python画折线图的具体代码,供大家参考,具体内容如下 # encoding=utf-8 import matplotlib.pyplot as plt from pylab import * #支持中文 mpl.rcParams['font.sans-serif'] = ['SimHei'] names = ['5', '10', '15', '20', '25'] x = range(len(names)) y = [0.855, 0.84, 0.835, 0.815,

随机推荐