python实验之绘制南丁格尔玫瑰图

python实验之绘制南丁格尔玫瑰
⼀、实验⽬的
了解玫瑰图的前世今⽣;了解 matplotlib 标准库中的 pyplot 模块;了解在极坐标
系中绘制柱状图。
⼆、实验基本原理及步骤(或⽅案设计及理论计算)
实验步骤:
1. 查阅⽂档,了解南丁格尔玫瑰图的原理。
2. 选择⼀组数据,⽐如新型冠状病毒肺炎相关数据,或者中国各个省份⾯积或⼈⼝
数据等等,编写程序画出玫瑰图。
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
# 中国各省⾯积
# shuju={'acreade':['新疆','西藏','内蒙古','青海','四川'],'value':[166,122.8,118.3,72.23,48.14]}
科普展品制作shuju ={'acreade':['福建','辽宁','河北','安徽','⼴东','⼭东','陕西','⼴西'],
'value':[12.13,14.59,18.77,13.97,18,15.38,20.56,23.6]}
pdat = pd.DataFrame(shuju)
# print(pdat)
线性驱动器# ⾓度
l = pdat['value']
print(l)
N = pdat.shape[0]# 总数
width =2* np.pi / N
螺钉输送机rad = np.cumsum([width]* N)# 每个扇形的起始⾓度
# color
# colors = ['darkgoldenrod', 'goldenrod', 'orange', 'gold', 'yellow']
colors =['blue','orange','brown','green','pink','blueviolet','turquoise','tomato']
探针天线plt.figure(figsize=(6,8))# 创建画布
ax = plt.subplot(projection='polar')
# 删除不必要的内容
ax.set_ylim(-4, np.ceil(l.max()+1))# 中间空⽩
ax.set_theta_zero_location('N')# 设置极坐标的起点(即0度)在正上⽅向
自动杀菌净手器
ax.spines['polar'].set_visible(False)# 不显⽰极坐标最外的圆形
ax.set_yticks([])# 不显⽰坐标间隔
ax.set_thetagrids([])# 不显⽰极轴坐标
# 绘画
ax.bar(rad, l, width=width, color=colors, alpha=1)
ax.bar(rad,5, width=width, color='white', alpha=0.3)# 中间添加⽩⾊⾊彩使图案变浅
ax.bar(rad,8, width=width, color='white', alpha=0.2)# 中间添加⽩⾊⾊彩使图案变浅
# text
for i in np.arange(N):
<(rad[i],# ⾓度
l[i]+1,# 长度
shuju['acreade'][i],# ⽂本
rotation=rad[i]*180/ np.pi,# ⽂字⾓度
rotation_mode='anchor',# this parameter is a trick
alpha=1,
fontweight='bold', size=12
)
plt.show()
钢丝绳卷筒

本文发布于:2024-09-22 12:28:55,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/1/204702.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:玫瑰   了解   数据
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议