如何用Python绘制数学图形,方法是什么
Admin 2022-08-18 群英技术资讯 1086 次浏览
本篇内容介绍了“如何用Python绘制数学图形,方法是什么”的有关知识,在实际项目的操作过程或是学习过程中,不少人都会遇到这样的问题,接下来就让小编带大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
说简单点,基本极坐标图就是圆形的散点图(柱状图或折线图),代码如下:
import random
from pyecharts import options as opts
from pyecharts.charts import Polar
data = [(i, random.randint(1, 100)) for i in range(101)]
c = (
Polar()
.add("", data, type_="scatter", label_opts=opts.LabelOpts(is_show=False))
.set_global_opts(title_opts=opts.TitleOpts(title="基本极坐标图"))
)
c.render_notebook()

数据data是1个列表,列表内的元素为元组,单个元组有2个数据,第一个数据为半径,第二个数据相当于角度,这样就好理解了
也可把type改为bar
c = (
Polar()
.add("", data, type_="bar", label_opts=opts.LabelOpts(is_show=False))
.set_global_opts(title_opts=opts.TitleOpts(title="基本极坐标图"))
)
c.render_notebook()

同理也可以改成折线(line)等,大家可以自己尝试一下。
在极坐标中引入柱状图
from pyecharts import options as opts
from pyecharts.charts import Polar
from pyecharts.faker import Faker
c = (
Polar()
.add_schema(
radiusaxis_opts=opts.RadiusAxisOpts(data=Faker.week, #数据项
type_="category" #坐标轴类型,类目轴,适用于离散的类目数据,为该类型时必须通过 data 设置类目数据。
),
angleaxis_opts=opts.AngleAxisOpts(is_clockwise=True, #是否顺时针排布
max_=10 #坐标轴刻度最大值
),
)
.add("A", [1, 2, 3, 4, 3, 5, 1], type_="bar")
.set_global_opts(title_opts=opts.TitleOpts(title="Polar-RadiusAxis"))
)
c.render_notebook()

RadiusAxisOpts:极坐标系径向轴配置项
AngleAxisOpts:极坐标系角度轴配置项
首先我们要引入数学中的sin函数,假设角度为theta,则长度为n(m+sin(theta)),n和m都为常量,那么元组(长度,角度)就可以在极坐标中确定一个点,把一系列的点放入列表中,并用折线图连接起来,就可以画出漂亮的数学图形。
import math import pyecharts.options as opts from pyecharts.charts import Polar data = [] for i in range(0, 101): theta = i / 100 * 360 r = 5 * (1 + math.sin(theta / 180 * math.pi)) data.append([r, theta]) c=( Polar() .add(series_name="line", data=data, label_opts=opts.LabelOpts(is_show=False)) .add_schema( angleaxis_opts=opts.AngleAxisOpts( start_angle=0, type_="value", is_clockwise=True ) ) .set_global_opts( tooltip_opts=opts.TooltipOpts(trigger="axis", axis_pointer_type="cross"), title_opts=opts.TitleOpts(title="极坐标双数值轴"), ) ) c.render_notebook()

start_angle:极坐标开始的角度
type_:坐标轴类型,'value'表示数值轴,适用于连续数据
is_clockwise:是否为顺时针
trigger:触发类型,'axis'表示坐标轴触发,主要在柱状图,折线图等会使用类目轴的图表中使用
axis_pointer_type:指示器类型,'cross'表示十字准星指示器
import math
from pyecharts import options as opts
from pyecharts.charts import Polar
data = []
for i in range(401):
t = i / 180 * math.pi
r = math.sin(9*t)
data.append([r, i])
c = (
Polar()
.add_schema(angleaxis_opts=opts.AngleAxisOpts(start_angle=0, min_=0))
.add("flower", data, label_opts=opts.LabelOpts(is_show=False))
.set_global_opts(title_opts=opts.TitleOpts(title="Polar-Flower"))
)
c.render_notebook()

是不是很漂亮,利用这种方法还可以画出更多漂亮的图形,赶紧动手试试吧!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
本文将使用 OpenCV,创建一个简单的文档扫描仪,就像常用的摄像头扫描仪应用程序一样,这篇文章主要给大家介绍了关于使用OpenCV构建文档扫描仪的相关资料,需要的朋友可以参考下
这篇文章主要为大家介绍了python的信号量,条件变量和事件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
为什么要用requests模块?requests模块的用法是什么?很多学习python的新手,对于requests模块不是很了解,因此,这篇文章就给大家介绍一下关于requests模块的内容。
这篇文章主要给大家分享python中的四个高级数据类型,分别是字符,元组,列表,字典,下文实例介绍的很详细,对大家学习和理解python数据类型有一定的帮助,有需要的朋友可以参考,接下来跟随小编一起学习一下吧。
这篇文章主要介绍了Python多线程编程之threading模块详解,文中有非常详细的代码示例,对正在学习python的小伙伴们有非常好的帮助,需要的朋友可以参考下
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008