从matlab中国动态中得到的代码,底下评论区给出了python的代码,我稍微改了下颜色
这是matlab的版本:

n = 800;
A = 1.995653;
B = 1.27689;
C = 8;
r=linspace(0,1,n);
theta=linspace(-2,20*pi,n);
[R,THETA]=ndgrid(r,theta);
% define the number of petals we want per cycle. Roses have 3 and a bit.
petalNum=3.6;
x = 1 - (1/2)*((5/4)*(1 - mod(petalNum*THETA, 2*pi)/pi).^2 - 1/4).^2;
phi = (pi/2)*exp(-THETA/(C*pi));
y = A*(R.^2).*(B*R - 1).^2.*sin(phi);
R2 = x.*(R.*sin(phi) + y.*cos(phi));
X=R2.*sin(THETA);
Y=R2.*cos(THETA);
Z=x.*(R.*cos(phi)-y.*sin(phi));
% % define a red map for our rose colouring
red_map=linspace(1,0.25,10)';
red_map(:,2)=0;
red_map(:,3)=0;
clf
surf(X,Y,Z,'LineStyle','none')
view([-40.50 42.00])
colormap(red_map)

这是python版本:

import matplotlib.colors
import numpy as np
import matplotlib.pyplot as plt
import math,pylabpi=math.pi
n=800
A=1.995653
B=1.27689
C=8
r=np.linspace(0,1,n)
theta=np.linspace(-2,20*pi,n)
R,THETA=np.meshgrid(r,theta)petalNum=3.6
x=1-(1/2)*((5/4)*(1-np.mod(petalNum*THETA,2*pi)/pi)**2-1/4)**2
phi=(pi/2)*np.exp(-THETA/(C*pi))
y=A*(R**2)*(B*R-1)**2*np.sin(phi)
R2=x*(R*np.sin(phi)+y*np.cos(phi))
X=R2*np.sin(THETA)
Y=R2*np.cos(THETA)
Z=x*(R*np.cos(phi)-y*np.sin(phi))mycmap = pylab.mpl.colors.LinearSegmentedColormap.from_list('cmap', ('#FF0000', '#DEEF77'), 256)fig=plt.figure()
ax=fig.gca(projection='3d')
ax.elev=29.00
ax.azim=-131.00
ax.set_xlim3d(xmin=-1,xmax=1)
ax.set_ylim3d(ymin=-1,ymax=1)
ax.set_zlim3d(zmin=-0.5, zmax=1)
ax.plot_surface(X,Y,Z*0.8,antialiased=True,cmap=mycmap)
plt.show()

matlabpython绘图:一枝花相关推荐

  1. Plotly_绘图画图作图交互

    20210601 https://zhuanlan.zhihu.com/p/87163211 画地图 今天就带你深入体验易于使用.文档健全.功能强大的开源 Python 绘图库 Plotly,教你如何 ...

  2. 给手绘图着色(添加颜色或色彩):CVPR2020论文点评

    给手绘图着色(添加颜色或色彩):CVPR2020论文点评 Learning to Shade Hand-drawn Sketches 论文链接:https://arxiv.org/pdf/2002.1 ...

  3. 经纬度绘图_【知识科普】地形图图例汇总,测绘人识图绘图必备(含dwg版下载)...

    地形图(topographic map)指的是地表起伏形态和地理位置.形状在水平面上的投影图.具体来讲,将地面上的地物和地貌按水平投影的方法(沿铅垂线方向投影到水平面上),并按一定的比例尺缩绘到图纸上 ...

  4. C# GDI+ 简单绘图 (三)

    感谢大家的支持,这几天从早忙到晚,一个字累呀!!!现在挺困的,但是又不习惯这么早睡觉,哎~~还是利用这个时间继续来写第三篇吧. 前两篇已经基本向大家介绍了绘图的基本知识.那么,我就用我们上两篇所学的, ...

  5. android 绘画,Android绘图基础

    绘图三要素 一支画笔 Paint. 一张画布 Canvas. 一个 Bitmap 或者一个 View 来承载这个图形. Paint常用属性 setAntiAlias() 设置画笔锯齿效果. setCo ...

  6. 《OpenCV3编程入门》学习笔记4 OpenCV数据结构与基本绘图

    第4章 OpenCV数据结构与基本绘图 4.1 基础图像容器Mat 4.1.1 数字图像存储概述   图像在数码设备中的表现形式:像素点矩阵 4.1.2 Mat结构的使用 1.OpenCV1.x时代: ...

  7. python的标准库turtle_Python标准库: turtle--海龟绘图。

    turtle --- 海龟绘图 (点击查看官方文档.) 简介 import turtle #调用该库.Turtle的实例对象,默认命名为turtle. turtle.forward(10)from t ...

  8. python画图标题_使用pyplot.matshow()函数添加绘图标题

    仅供参考 import matplotlib.pyplot as plt import numpy as np def samplemat(dims): """Make ...

  9. 回归 统计绘图_手把手教绘制回归分析结果的森林图「GraphPad Prism和Excel」

    在之前的内容中,我们讲到通过展示森林图,可以更加直观的将回归分析结果可视化.详见:一文带你玩转森林图! 在本期内容中,我们来实际操练一下,介绍几款常用的软件,教大家绘制出高质量的森林图. 下面我们以2 ...

最新文章

  1. 安装虚拟机及Linux常用操作命令
  2. 学习:正则表达式的基本语法
  3. vue + element 顶部二级菜单_揭秘vue/react组件库中5个quot;作者不造的轮子quot;
  4. vscode前端常用插件整理(vuejs)
  5. ipad和iphone切图_如何从iPhone和iPad上的Mail应用程序删除电子邮件帐户
  6. 1959: 图案打印
  7. 智己汽车——比智能车更豪华,比豪华车更智能
  8. 因式分解 (10 分)
  9. 关于mysql叙述中错误的是什么_以下关于MySQL的叙述中,错误的是( )。_学小易找答案...
  10. 第六次作业:结对项目之需求分析与原型设计
  11. springcloud 心得记录
  12. 绘图添加网格_Stata绘图: 添加虚线网格线
  13. Layer 提示框tips使用(批量提示)
  14. polkit启动失败_Linux MySQL 常见无法启动或启动异常的解决方案
  15. Python使用openpyxl插入excel批注,修改批注
  16. 用户自动设置报表格式
  17. 小波神经网络的基本原理,小波神经网络算法原理
  18. convex hull
  19. 数据库——如何求出候选码
  20. 淘宝自动回复机器人配置手册——目前2018年淘宝主流自动回复软件一览

热门文章

  1. 推荐7个好用的Python效率工具,拿走不谢
  2. 二阶段目标检测网络-Mask RCNN 详解
  3. 字符串的模式匹配(精准匹配)
  4. ucore操作系统 lab1 练习一 实验报告
  5. microsoft.ACE.oledb.12.0异常解决(亲测有效)
  6. 华南主板bios怎么恢复出厂设置_bios怎么恢复出厂设置 bios恢复出厂状态方法【图文】...
  7. python编辑器哪款最好_python编辑器哪一款是比较好用的
  8. 深入浅出 GAN·原理篇文字版(完整)|干货
  9. Cadence16.5 叠层设置怎样设置正片负片
  10. 树莓派pico使用维特智能jy61/jy901/jy61p陀螺仪