Python&Matlab实现伏羲八卦图的绘制

 更新时间:2022年03月22日 08:49:17   作者:是梦吧,是你吧!  
八卦最先由伏羲根据燧人氏造设的两幅星图历法《河图洛书》创设。本文将通过Python和Matlab分别绘制伏羲八卦图,感兴趣的小伙伴可以了解一下

1 与达尔文对话

140年前,1858年7月1日,达尔文在英伦岛发表了自己有关自然选择的杰出论文。他提出,生物的发展规律是物竞天择。经过物竞,自然界选择并存留最具生命优势的物种。这些物种愈竞愈强。直至人,已无所不能,成为统治世界的物种,这已是不争的事实。但在地球的漫长的演化史上,我们又看见,曾经统治地球的庞然大物恐龙消亡了。一-些科学家将其归之于小行星对地球的撞击。但就在我们这一代人眼前,兽中之王的老虎正在一天天消失。我们知道,在其消亡的时间轴上,小行星并未与地球碰撞。

循着达尔文的思索,我们得知:动物强于植物,老虎强于小鼠。愈是后续的物种愈强,因为它们是物竞天择的结果。强者存留,弱者淘汰。但环顾四野,植物茂盛,小鼠成群,而百兽之王的老虎却在一天天消亡。

进一步看,诞生于35亿年以前的最原始的物种单细胞生物,迄今仍然是地球上生存力度最强、生物质量最大、分布范围最广的生命形态,反而是那些在进化史上较晚近的高级物种如哺乳类动物正在以最快的速度灭绝。换一个眼光重新审视考古生物学,我们会发现,在亿万年来已遭灭绝的99%以上的生物品杀里,愈进化的物种淘汰几率愈高、绝种速度愈快,亦即生存力度愈低。

何以是“强”者消亡,“弱”者长存?即是说,在“物竞天择,适者生存”的表观现象后面,实际上暗藏着一个“自然选择偏偏要把最不适于生存的弱化产物层层推出”的单向度规定。印度诗圣泰戈尔说:“我们把世界看错了,反说世界欺骗了我们。”是伟大的达尔文错了,还是世界在我们有限的认知力之外,另有一番规律?
历代的哲人、物理学家、化学家、生物学家、社会学家,或思索过这一问题而不得其解,或已走到这一问题的门口,束手无策而返。其留下的大量艰涩难懂之文,多与此有关。

2 与老子对话

2.1 Python实现

#====导入相关库========
import turtle
import time
 
#====欢迎关注公众号:电力系统与算法之美======
#====更多惊喜,更多浪漫,更多算法等你=====
angle = 270
turtle.title('我与老子对话')
#=====太极图=======
def tai():
    r = 200  # 设置半径
    turtle.penup()  # 拿起画笔
    turtle.goto(0, 0)  # 到画布中心
    turtle.setheading(angle)  # 设置当前朝向为angle角度
    turtle.fd(r)  # 前进r的距离
    turtle.pendown()  # 放下画笔
    turtle.right(90)  # 调整海龟角度
 
    #======画阳鱼======
    turtle.fillcolor("white")  # 填充为白色
    turtle.begin_fill()  # 开始填充
    turtle.circle(-r / 2, 180)
    turtle.circle(r / 2, 180)
    turtle.circle(r, 180)
    turtle.end_fill()  # 填充结束
 
    #=====画阴鱼=========
    turtle.fillcolor("black")  # 填充为黑色
    turtle.begin_fill()
    turtle.circle(r, 180)
    turtle.right(180)
    turtle.circle(-r / 2, 180)
    turtle.circle(r / 2, 180)
    turtle.end_fill()
 
    #=======画阴鱼眼==========
    turtle.penup()
    turtle.setheading(angle)
    turtle.fd(-r / 2)
    turtle.pendown()
    turtle.dot(r / 4, "white")  # dot()绘制具有特定大小和颜色的圆点
 
    #=========画阳鱼眼=========
    turtle.penup()
    turtle.fd(-r)
    turtle.pendown()
    turtle.dot(r / 4, "black")
    turtle.penup()
 
turtle.tracer(0)  # 将刷新率置为0,即不刷新
for i in range(10000):  # 这里设置了1w次,也可以是其他次数
    tai()
    turtle.update()  # 更新绘图
    time.sleep(0.01)  # 休眠时间,这一句可以没有,但是如果没有的话,太极转的会很快
    turtle.clear()  # 清空画布
    angle += 1

2.2 Matlab实现 

%% 太极八卦图
 
%%~~~~~~~欢迎关注公众号:算法与编程之美~~~~%%
 
clc;clear;close all;
t=0:.1:pi;
T=0:.1:2*pi;
c=@(t)cos(t);s=@(t)sin(t);
x=c(t);y=s(t);
X=c(t);Y=s(-t);
x1=.1*c(T)-.5;y1=.1*s(T);
x2=x1+1;%y2=y1;
x3=.5*c(t)-.5;y3=.5*s(t);
x4=x3+1;%y4=-y3;
hold on
f=@(x,y,c)fill([x,flip(x3,2),flip(x4,2)],...
    [y,flip(y3,2),flip(-y3,2)],c);
f(X,Y,'k');
f(x,y,'w');
fill(x2,y1,'k',x1,y1,'w')
axis square off

到此这篇关于Python&Matlab实现伏羲八卦图的绘制的文章就介绍到这了,更多相关Python Matlab八卦图内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python数据分析之DataFrame内存优化

    python数据分析之DataFrame内存优化

    pandas处理几百兆的dataframe是没有问题的,但是我们在处理几个G甚至更大的数据时,就会特别占用内存,对内存小的用户特别不好,所以对数据进行压缩是很有必要的,本文就介绍了python DataFrame内存优化,感兴趣的可以了解一下
    2021-07-07
  • Python3 解释器的实现

    Python3 解释器的实现

    在本篇内容中小编给大家总结了关于Python3解释器的用法以及相关知识点,需要的朋友们学习下。
    2021-06-06
  • TensorFlow实现非线性支持向量机的实现方法

    TensorFlow实现非线性支持向量机的实现方法

    本篇文章主要介绍了TensorFlow实现非线性支持向量机的实现方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-04-04
  • 使用python在校内发人人网状态(人人网看状态)

    使用python在校内发人人网状态(人人网看状态)

    人人网怎么发状态?下面使用python实现这个功能,大家参考使用吧
    2014-02-02
  • Django 报错:Broken pipe from ('127.0.0.1', 58924)的解决

    Django 报错:Broken pipe from ('127.0.0.1', 5892

    这篇文章主要介绍了Django 报错:Broken pipe from ('127.0.0.1', 58924)的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-09-09
  • 在python3中实现查找数组中最接近与某值的元素操作

    在python3中实现查找数组中最接近与某值的元素操作

    今天小编就为大家分享一篇在python3中实现查找数组中最接近与某值的元素操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02
  • python创建生成器以及访问的方法详解

    python创建生成器以及访问的方法详解

    这篇文章主要介绍了python创建生成器以及访问的方法详解,与列表一次性地将数据全都加载到内存不同的是,生成器使用推断加载数据,每次只推断出一个对象,在数据量比较大时,可以节省内存,需要的朋友可以参考下
    2023-11-11
  • 关于numpy两个array叠加操作详解

    关于numpy两个array叠加操作详解

    numpy是Python用来科学计算的一个非常重要的库,numpy主要用来处理一些矩阵对象,可以说numpy让Python有了Matlab的味道,下面这篇文章主要给大家介绍了关于numpy两个array叠加操作的相关资料,需要的朋友可以参考下
    2022-08-08
  • Python中用format函数格式化字符串的用法

    Python中用format函数格式化字符串的用法

    这篇文章主要介绍了Python中用format函数格式化字符串的用法,格式化字符串是Python学习当中的基础知识,本文主要针对Python2.7.x版本,需要的朋友可以参考下
    2015-04-04
  • python实现在IDLE中输入多行的方法

    python实现在IDLE中输入多行的方法

    下面小编就为大家分享一篇python实现在IDLE中输入多行的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-04-04

最新评论