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

目录
  • 1 与达尔文对话
  • 2 与老子对话
    • 2.1 Python实现
    • 2.2 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八卦图内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 12行javascript代码绘制一个八卦图

    一句话说明:用有限的代码构建一个1024*1024的颜色矩阵,秀出你的编程&艺术之美 起源于 stackexchange 上的一个问题, 这里稍微做了一下扩展,支持更多编程语言,并放宽了代码长度的限制. 规则 目标: 通过实现 模版 中的一个函数 get_color_at(x, y) ,在一个 1024*1024 的画布上画出尽可能 "有意思" 的图案. 参数: int x, int y ,取值均为 0 - 1023,对应画布上坐标点,左上角为起始点 (0,0) 返回: int

  • python散点图的绘制

    目录 一.二维散点图的绘制 1.采用pandas.plotting.scatter_matrix函数绘制 2. 采用seaborn进行绘制 二. 三维散点图绘制 一.二维散点图的绘制 1.采用pandas.plotting.scatter_matrix函数绘制 pd.plotting.scatter_matrix(iris_data, figsize=(10, 10), alpha=1, hist_kwds={"bins": 20}) 2. 采用seaborn进行绘制   # No.

  • 详解Matlab如何绘制桑基图

    目录 详细用法 1使用示例 2输入参数 3输出 函数完整代码 使用示例代码 这次主要是分享自己写的一个函数,用来绘制桑基图,效果大概是下面这样子: 先说明函数(sankey2)怎么用,函数完整代码放在博客最后 详细用法 1 使用示例 新建一个m文件,运行如下代码 List={'a1',1,'A'; 'a2',1,'A'; 'a3',1,'A'; 'a3',0.5,'C'; 'b1',1,'B'; 'b2',1,'B'; 'b3',1,'B'; 'c1',1,'C'; 'c2',1,'C'; 'c

  • python绘制饼图的方法详解

    用法 matplotlib.pyplot.pie(x, explode=None, labels=None, colors=None, autopct=None, pctdistance=0.6, shadow=False, labeldistance=1.1, startangle=0, radius=1, counterclock=True, wedgeprops=None, textprops=None, center=(0, 0), frame=False, rotatelabels=F

  • 用python绘制极坐标雷达图

    目录 综述 绘图代码和解析 绘制一张多主体雷达图 绘制多张单主体雷达图 总结 综述 python的matplotlib画图库的功能非常强大,可以画很多很多种图,我们日常生活中遇到的雷达图也不例外. 雷达图也被称为网络图,蜘蛛图,星图等,是一个不规则的多边形.雷达图可以形象地展示相同事物的多维指标,应用场景非常多,比如本篇博客中,用来展示球员的不同能力的区别. matplotlib库中的雷达图绘制是基于极坐标的,因此所有的数据和标签都要根据角度来计算出位置. 本篇博客将详细的解释绘制雷达图过程中的

  • 详解Matlab如何绘制小提琴图

    目录 1使用示例 基础使用,Y为矩阵 基础使用,Y为向量,X为标签 基础使用多个图像绘制,并添加图例 2完整代码 写了个matlab绘制小提琴图的函数: 1.图中小提琴状区域为核密度曲线 2.白色方块为25%,75%分位数 3.中间横线为中位数 4.白色点为离群值点 5.竖着的黑线是去掉离群值点后点的上下限 1使用示例 基础使用,Y为矩阵 X=1:5; Y=randn(100,5); Hdl1=violinChart(gca,X,Y,[0 0.447 0.741],0.6); X:横坐标 Y:数

  • 利用Python绘制酷炫的3D地图

    目录 1.重庆市3D地图 2.中国3D地图一 3.中国3D地图二 4.中国3D地图三 5.地球展示 之前我们介绍了很多Python地图可视化的内容,本次主要介绍如何Python绘制3D地图,还是比较神奇的,下面让我们一起一饱眼福吧! 1.重庆市3D地图 from pyecharts import options as opts from pyecharts.charts import Map3D from pyecharts.globals import ChartType # 经纬度 exam

  • Matlab绘制中国地图超全教程详解

    目录 各省边界线绘图 省份填色图 中国公路交通图 中国铁路交通图 中国河流图 组合美化图 美化图一 美化图二 依旧需要用到Mapping Toolbox不会安装的可以看我上一篇 虽然我们只读取shp文件,但需要保证文件夹里还有shx文件及dbf文件 各省边界线绘图 provinces=shaperead('bou2_4l.shp','UseGeoCoords',true); % 绘图 worldmap('China'); geoshow(provinces) 省份填色图 provinces=sh

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

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

  • python 实现在一张图中绘制一个小的子图方法

    有时候为了直观展现图的信息,可以在大图中添加小子图的方式进行数据分析,如下图所示: 具体的代码如下:该图连接了数据库,当然重要的不是数据展示,而是添加子图的方法. import matplotlib.pyplot as plt import MySQLdb as mdb import numpy as np from mpl_toolkits.axes_grid1.inset_locator import inset_axes from mpl_toolkits.axes_grid1.inset

  • 详解Matlab实现动态表白图的绘制

    目录 1.幸福和快乐的哲学追问 2.提前祝女朋友节日快乐 2.1 展现 2.2 代码 1.幸福和快乐的哲学追问 在过去的500年间,我们见证了一连串令人惊叹的革命.地球在生态和历史上都已经整合成一个单一的领域.经济呈现指数增长,今日人类所享有的财富在过去只有可能出现在童话里.而科学和工业革命也带给我们超人类的力量,以及几乎可以说无限的能源.不仅社会秩序完全改变,政治.日常生活和人类心理也彻底改观. 只不过,我们真的更快乐了吗?人类在过去5世纪间积蓄的财富,是不是真的让我们找到了新的满足感?有了取

  • C++调用matlab引擎实现三维图的绘制

    目录 VS2012设置 matlab程序 VS2012控制台程序 运行结果 说明 VS2012设置 项目–项目属性–配置属性–VC++目录–包含目录 D:\MATLAB\R2016a\extern\include 项目–项目属性–配置属性–VC++目录–库目录 D:\MATLAB\R2016a\extern\lib\win64\microsoft 添加依赖项有两种方法: 方法一:项目中设置 项目–项目属性–配置属性–链接器–输入–添加依赖项 libmx.liblibmat.liblibmex.l

  • Python&Matlab实现炫酷的3D旋转图

    目录 前言 1.Python爬取美女照片 1.1 留恋忘返的网址 1.2 Python代码 1.3 结果 2.Python实现 2.1 条件准备 2.2 运行展示 2.3 Python实现 3.Matlab实现 3.1 运行展示 3.2 Matlab代码 前言 我们今天的任务很明确,我先系统梳理一下: 1.先用Python爬取一波漂亮的美女照片: 2.然后Python中炫酷的代码实现: 3.最后用matlab伺候,得到相同的结果. 1.Python爬取美女照片 1.1 留恋忘返的网址 站长素材-

  • Python实现平行坐标图的绘制(plotly)方式

    平行坐标图简介 当数据的维度超过三维时,此时数据的可视化就变得不再那么简单.为解决高维数据的可视化问题,我们可以使用平行坐标图.以下关于平行坐标图的解释引自百度百科:为了克服传统的笛卡尔直角坐标系容易耗尽空间. 难以表达三维以上数据的问题, 平行坐标图将高维数据的各个变量用一系列相互平行的坐标轴表示, 变量值对应轴上位置.为了反映变化趋势和各个变量间相互关系,往往将描述不同变量的各点连接成折线.所以平行坐标图的实质是将m维欧式空间的一个点Xi(xi1,xi2,...,xim) 映射到二维平面上的

  • Python如何使用内置库matplotlib绘制折线图

    这篇文章主要介绍了Python如何使用内置库matplotlib绘制折线图,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 环境准备: 需要安装matplotlib,安装方式: pip install matplotlib 直接贴代码喽: #引入模块 from matplotlib import pyplot,font_manager #设置支持中文字体的显示 font=font_manager.FontProperties(fname="C:\

  • 利用Python Matlab绘制曲线图的简单实例

    目录 一.简介 二.绘制图形 1.第一个曲线图 2.第二个图形 3.第三个图形 4.第四个图形 5.画出指定区间的一个多项式函数: 总结 一.简介 我们在这里采用Python中的matplotlib来实现曲线图形的绘制.matplotlib是著名的python绘图库,它提供了一整套绘图API,十分适合交互式绘图. 二.绘制图形 1.第一个曲线图 代码: 具体的绘制的代码如下所示: import matplotlib.pyplot as plt import numpy as np r = np.

  • Python+matplotlib实现堆叠图的绘制

    目录 一.水平堆叠图 二.波浪形堆叠图 三.加上数据标签 注:本文的所有数据请移步—— 参考数据 一.水平堆叠图 堆叠图其实就是柱状图的一种特殊形式 from matplotlib import pyplot as plt plt.style.use('seaborn') plt.figure(figsize=(15,9)) plt.rcParams.update({'font.family': "Microsoft YaHei"}) plt.title("中国票房2021T

  • Python matplotlib实现折线图的绘制

    目录 一.版本 二.图表主题设置 三.一次函数 四.多个一次函数 五.填充折线图 官网: https://matplotlib.org 一.版本 # 01 matplotlib安装情况 import matplotlib matplotlib.__version__ 二.图表主题设置 请点击:图表主题设置 三.一次函数 import numpy as np from matplotlib import pyplot as plt # 如何使用中文标题 plt.rcParams['font.san

随机推荐