首页 分享 利用Python绘制好看的玫瑰花图

利用Python绘制好看的玫瑰花图

来源:花匠小妙招 时间:2025-01-12 03:34

Python客栈送红包、纸质书

今天主要给大家介绍如何用pyecharts画各种漂亮的数学图形

一、基本极坐标图

说简单点,基本极坐标图就是圆形的散点图(柱状图或折线图),代码如下:

1

2

3

4

5

6

7

8

9

10

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

1

2

3

4

5

6

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)等,大家可以自己尝试一下。

二、极半径图

在极坐标中引入柱状图

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

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"  

                                           ),

        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都为常量,那么元组(长度,角度)就可以在极坐标中确定一个点,把一系列的点放入列表中,并用折线图连接起来,就可以画出漂亮的数学图形。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

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()

AngleAxisOpts参数介绍:

start_angle:极坐标开始的角度

type_:坐标轴类型,'value'表示数值轴,适用于连续数据

is_clockwise:是否为顺时针

TooltipOpts参数介绍:

trigger:触发类型,'axis'表示坐标轴触发,主要在柱状图,折线图等会使用类目轴的图表中使用

axis_pointer_type:指示器类型,'cross'表示十字准星指示器

开始画玫瑰花图

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

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()

是不是很漂亮,利用这种方法还可以画出更多漂亮的图形,赶紧动手试试吧!

以上就是利用Python绘制好看的玫瑰花图的详细内容,更多关于Python玫瑰花图的资料请关注脚本之家其它相关文章!

原文链接:https://mp.weixin.qq.com/s/1yowChbtAVbfqqwnmmDPCw

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权/违法违规/事实不符,请将相关资料发送至 reterry123@163.com 进行投诉反馈,一经查实,立即处理!

相关知识

利用Python绘制3D玫瑰花:技术与艺术的交融之美
绘制玫瑰花并添加文字python
python 绘制一个四瓣花图
用Python绘制玫瑰花
Python绘制玫瑰花:编程与艺术的交融
小伙利用Python绘制999种玫瑰花表白女神,会编程男孩子真好
Python实现平行坐标图的绘制(plotly)
用python turtle绘制一朵玫瑰花
python绘制玫瑰花情人节表白
用python绘制玫瑰花的代码

网址: 利用Python绘制好看的玫瑰花图 https://www.huajiangbk.com/newsview1548710.html

所属分类:花卉
上一篇: 用填充雷达图画一朵七瓣花—exc
下一篇: 比传统柱形图美观十倍,详解Exc

推荐分享