python画玫瑰花(python樱花飘落代码)

http://www.itjxue.com  2023-04-05 07:07  来源:未知  点击次数: 

python气象绘图windrose

#导入包

import numpy as np

import pandas as pd

from matplotlib import pyplot as plt

from matplotlib.ticker import FuncFormatter

import matplotlib as mpl

mpl.rcParams['font.sans-serif'] = ['SimHei']? #设置简黑字体

mpl.rcParams['axes.unicode_minus'] = False? #设置负号正常显示

#----获取数据DataFrames,index*columns。index表示不同值范围,columns表示十六个风向

data = pd.DataFrame(wind_d_max_num_per,

? ? ? ? ? ? ? ? ? ? index=['15', '15~25', '25~35', '35~45',"≥45"],

? ? ? ? ? ? ? ? ? ? columns='N NNE NE ENE E ESE SE SSE S SSW SW WSW W WNW NW NNW'.split())

N = 16 # 风速分布为16个方向

theta = np.linspace(0, 2*np.pi, N, endpoint=False) # 获取16个方向的角度值

width = np.pi / 4 * 0.4? # 绘制扇型的宽度,可以自行调整0.5时是360,充满,有间隔的话小于0.5即可

labels = list(data.columns) # 自定义坐标标签为 N , NSN, ……# 开始绘图

plt.figure(figsize=(6,6),dpi=600)

ax = plt.subplot(111, projection='polar')

#----自定义颜色

mycolor =['cornflowerblue','orange','mediumseagreen','lightcoral','cyan']

#----循环画风玫瑰图

i=0

for idx in data.index:

? ? print(idx)

? ? # 每一行绘制一个扇形

? ? radii = data.loc[idx] # 每一行数据

? ? if i == 0:

? ? ? ? ax.bar(theta, radii, width=width, bottom=0.0, label=idx, tick_label=labels,

? ? ? ? ? color=mycolor[i])

? ? else:

? ? ? ? ax.bar(theta, radii, width=width, bottom=np.sum(data.loc[data.index[0:i]]), label=idx, tick_label=labels,

? ? ? ? ? color=mycolor[i])

? ? i=i+1

#此种画法,注意bottom设置,第一个bottom为0,后续bottom需要在前一个基础上增加。

ax.set_xticks(theta)

ax.set_xticklabels(labels,fontdict={'weight':'bold','size':15,'color':'k'})

ax.set_theta_zero_location('N') #设置零度方向北

ax.set_theta_direction(-1)? ? # 逆时针方向绘图

#----设置y坐标轴以百分数显示

plt.gca().yaxis.set_major_formatter(FuncFormatter(lambda s, position: '{:.0f}%'.format(100*s)))

plt.legend(loc=4, bbox_to_anchor=(0.05, -0.25),fontsize=12) # 将label显示出来, 并调整位置

#----保存图片

plt.savefig("./windrose1.svg")

用Python matplotlib 怎么画风向玫瑰图 能给出程序的

import?numpy?as?np

import?matplotlib.pyplot?as?plt

N?=?20

theta?=?np.linspace(0.0,?2?*?np.pi,?N,?endpoint=False)

radii?=?10?*?np.random.rand(N)

width?=?np.pi?/?4?*?np.random.rand(N)

ax?=?plt.subplot(111,?projection='polar')

bars?=?ax.bar(theta,?radii,?width=width,?bottom=0.0)

#?Use?custom?colors?and?opacity

for?r,?bar?in?zip(radii,?bars):

????bar.set_facecolor(plt.cm.jet(r?/?10.))

????bar.set_alpha(0.5)

plt.show()

差不多上面代码的原理,具体的自己照着官方文档改

python-繁花曲线规图案

python-繁花曲线规图案

[简介]

繁花曲线规现已成为儿童的一种智力 玩具 和设计工具,它由一套 彩色 塑料齿轮组成。一个内齿轮是环状的,齿做在里面;几个小外齿轮的齿做在外面,外齿轮内部有一些小圆孔和几个其它形状的、较大的孔。

[原理]

大小齿轮的齿数之比,约为 最简分数 时,其分母就是小齿轮的自转数,分母与分子之和就是 图案 中的花瓣数。而 分子 就是小齿轮沿着大齿轮的公转数。所以,只要掌握这个最简分数,就能知道画出来的图案大概是什么形状的。

总而言之,选择不同的齿轮与不同的孔,就可画出细腻、动人的各种曲线,例如玫瑰线、内摆线等等。

用繁花曲线规完成的图案:

下面我们一起用python来画一个繁花曲线规完成的漂亮图案:

首先我们先导入turtle:

第二步:定义画笔:

第三步:根据for循环和角度的确认完成图案的绘制

最后我们一起来看一下效果:

[总结]我们今天是用turtle来绘制的繁花曲线规的图案,并且应用for循环和角度的确认来完成。之前我们看用尺来画的都是彩色的,那小朋友能不能把我们今天绘制的图案变成彩色的呢?

python音乐可视化:好玩的matplotlib南丁格尔玫瑰图版

效果图:

操作演示:

技术要点:

1 matplotlib的南丁格尔玫瑰图,用极坐标polar制作,并动画显示。

2 pygame新版的播放mp3,但本机的操作系统不能播放mp3,我用pydub做些格式转换。

3 用librosa获取音乐的相关数据和采样。

4 参考代码,并对源代码进行修改,增加,删减,排版和注释,感谢原作者,如有侵权,请联系,定删除。

====下面分步,讲解代码====

第1步:模块导入

第2步:窗口的初始化设置

第3步:参数设置

第4步:核心代码:

第5步:filter类

第6步:函数定义

第7步:启动主函数

自己整理,分享出来,希望大家喜欢。

(责任编辑:IT教学网)

更多

推荐数据库文章