首页
/
每日頭條
/
時尚
/
python繪制非常漂亮的圖
python繪制非常漂亮的圖
更新时间:2026-01-10 14:49:46

今天主要給大家介紹如何用pyecharts畫各種漂亮的數學圖形

python繪制非常漂亮的圖(用python繪制出漂亮的玫瑰花圖)1

一、基本極坐标圖

說簡單點,基本極坐标圖就是圓形的散點圖(柱狀圖或折線圖),代碼如下:

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

python繪制非常漂亮的圖(用python繪制出漂亮的玫瑰花圖)2

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

python繪制非常漂亮的圖(用python繪制出漂亮的玫瑰花圖)3

同理也可以改成折線(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()

python繪制非常漂亮的圖(用python繪制出漂亮的玫瑰花圖)4

參數介紹

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

python繪制非常漂亮的圖(用python繪制出漂亮的玫瑰花圖)5

AngleAxisOpts參數介紹:

start_angle:極坐标開始的角度 type_:坐标軸類型,'value'表示數值軸,适用于連續數據 is_clockwise:是否為順時針

TooltipOpts參數介紹:

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

python繪制非常漂亮的圖(用python繪制出漂亮的玫瑰花圖)6

是不是很漂亮,利用這種方法還可以畫出更多漂亮的圖形,趕緊動手試試吧!

-完-

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
告别頻繁脫妝 護膚打底步步為營
告别頻繁脫妝 護膚打底步步為營
告别頻繁脫妝護膚打底步步為營别單一指望粉底家族的産品幫你實現不脫妝美夢,其實,肌膚狀态是否OK才是決定底妝完美度的關鍵。也正因為如此,我們就要學會在使用粉底之前,用正确的護膚品對肌膚進行快速調理,特别是在幹燥的秋冬季節。護膚品搭配上簡單的手法,為肌膚增加滋潤感并喚醒活力度,塗抹粉底時再講究一些技巧,...
2026-01-10
怎麼簡單去黑眼圈?
怎麼簡單去黑眼圈?
凡是在晚上熬過夜的人都可能出現過黑眼圈,但有些人的眼袋卻一直都十分嚴重,對于女性來說就讓自己的容貌受到了比較大的影響。其實有一些小方法可以幫助淡化黑眼圈,而且效果是非常明顯的,隻是很多都不被大家知道而已,接下來就給小編一些時間來具體的講述吧。1、鹽水敷眼:玻璃杯中倒一杯熱水,再放入一茶匙鹽,拌勻後用...
2026-01-10
專家評判坊間傳言真僞 分享面膜新知
專家評判坊間傳言真僞 分享面膜新知
一、敷完面膜後皮膚很潤,不再需要後續護理不一定!這主要取決于面膜的配方和設計,通常說來,滋養類面膜的主要作用在于增加有效成分的滲透量及速度,清潔類面膜則能吸附表皮多餘油脂、角質殘餘及污垢,用後都感覺皮膚光滑。隻有少數面膜(多為免洗式)會留一層保護膜在皮膚表面,幫助防止水分流失。因此為了保險起見,最好...
2026-01-10
隔離霜的作用
隔離霜的作用
隔離霜屬于一種化妝品,但是對于人們的肌膚确實可以帶來一定的保護作用。不過之前沒有使用過隔離霜的朋友們,也許是對于隔離霜的作用不是那麼的了解,下面我們就一起去看看有關隔離霜的作用介紹吧,也許對我們的肌膚保護起到了很多的益處。對于隔離霜的作用來說,它本身就是一種保護化妝和保護自己肌膚的東西,使用隔離霜确...
2026-01-10
臉部美白的方法
臉部美白的方法
美白是很常見的,美白的方法比較多,在美白的時候,都是可以根據自己喜歡的方式進行,不過多美白的時候,也是要注意方式方法,不同的美白方法,對肌膚改善上,都是有着很大不同,所以臉部美白的方法具體該如何選擇呢,也是可以通過自身身體情況進行選擇。很多人之所以黑,就是因為身體各方面,沒有得到休息和改善,所以使得...
2026-01-10
Copyright 2023-2026 - www.tftnews.com All Rights Reserved