【R语言 南丁格尔玫瑰图绘制】

article/2025/11/1 3:37:52

继续上一篇地理信息可视化讲起,为了能够更加直观的展示数据分布情况,发现之前人民日报客户端曾经做过一张关于疫情分布的玫瑰图,非常惊艳,故尝试用当前爬取的数据进行绘制。

绘图前数据整理

现存数据中不少地区病例已经清零,故在绘图中剔除为0的地区,由于弯弯的数据太过于扎眼,和大陆地区差异巨大,直接用原始数据绘图可视化较差,故对原始数据进行了相应调整。

library(ggplot2)
library(RColorBrewer)
library(dplyr)
###绘图数据处理###
mydata[,c(1,3)]%>%arrange(confirm)->mgdata
mgdata<-filter(mgdata,confirm!=0)##剔除现存本土确诊病例为0的省份##
c(mgdata$confirm[1:20]*10,mgdata$confirm[21:22])->mgdata$num##因数据范围差距较大,对其进行转换##
seq(1,length(mgdata$id_area))->mgdata$id
mm<-data.frame()
for(i in 1:length(mgdata$id_area)){if(mgdata$id[i]<=10){mm[i,1]<-paste0(mgdata$confirm[i],"例 ",mgdata$id_area[i])}else if(mgdata$id[i]>10&mgdata$id[i]<=18){mm[i,1]<-paste0(mgdata$confirm[i],"例\n",mgdata$id_area[i])}else{mm[i,1]<-paste0(mgdata$id_area[i],"\n",mgdata$confirm[i],"例")}
}##生成图标文本标签##
mm$V1->mgdata$label

在对图形添加文本标签时发现角度较难掌握,一个一个添加较为繁琐,故编写了角度生成函数ggangel,可以根据柱状图数量生成文本标签角度(有需要的小伙伴可以拿去用哦~)。

ggangel<-function(x){
kk<-as.numeric()
for(i in 1:x){j<-360/(2*x)kk[i]<-j+(i-1)*j*2
}
return(kk)
}

绘制玫瑰图

###绘制南丁格尔玫瑰图###
colourful<-colorRampPalette(brewer.pal(5,"Spectral"))(22)##提取想要填充的颜色##
colourful = c("#54778f", "#4EB043", "#E69D2A", "#DD4714", "#A61650")##推荐色号##
ggplot(mgdata,aes(x=id,y=num,label=label))+geom_col(aes(fill=id),width = 1.1,size=0,show.legend = F)+scale_y_log10()+geom_col(aes(y=log10(8)),fill="white",width = 1.1,alpha=0.2,size=0)+geom_col(aes(y=log10(2)),fill="white",width = 1.1,alpha=0.2,size=0)+coord_polar()+theme_void()+scale_fill_gradientn(colors = colourful)->p
p+geom_text(data=filter(mgdata,id<=10),size=2,nudge_y = 0.8,fontface="bold",angle=90-ggangel(22)[1:10])+geom_text(data=filter(mgdata,id<=23&id>18),size=2,nudge_y = -0.5,fontface="bold",angle=360-ggangel(22)[19:22],color="white")+geom_text(data=filter(mgdata,id>10&id<=18),size=2,nudge_y=-0.5,fontface="bold",color="white")##依据标签位置类别逐类添加文本标签##
ggsave("f://data//Books//rosemap.jpg")##存图##

结果如下

南丁格尔玫瑰图


http://chatgpt.dhexx.cn/article/6QwbD4Y7.shtml

相关文章

南丁格尔玫瑰图解析

一&#xff1a;先安装软件&#xff0c;任意一个都可以 PyCharm安装教程 https://www.cnblogs.com/du-hong/p/10244304.html Anaconda安装教程 https://blog.csdn.net/ITLearnHall/article/details/81708148 二&#xff1a;相关软件以及Python库的知识讲解&#xff1a; Py…

Echarts南丁格尔图.

项目场景&#xff1a; 通过Echarts修改南丁格尔图js文件&#xff0c;修改轮盘颜色。使项目更加美观 文本标签自定义 问题描述 不知道为什么自定义函数使饼图图形上的文本标签label标签显示在内部且&#xff0c;获得对应标签的数据。使用自定义函数formatter的参数是ar&#…

Python+Matplotlib绘制饼状图模拟南丁格尔玫瑰图

开学第一课&#xff1a;一定不要这样问老师Python问题 董付国老师Python系列教材推荐与选用参考 版权声明&#xff1a;由于公众号后台规则问题&#xff0c;本文暂时无法设置原创标记&#xff0c;但仍属原创内容&#xff0c;微信公众号“Python小屋”坚持只发原创技术文章。 推…

使用Matplotlib绘制南丁格尔玫瑰图

前言 在前文中&#xff0c;我们介绍了使用pyecharts绘制南丁格尔玫瑰图&#xff0c;本章我们再学习一下使用matplotlib绘制南丁格尔玫瑰图&#xff0c;了解在极坐标系中绘制柱状图。并对比一下两种不同的绘制方法&#xff0c;如何实现&#xff1f; 介绍 玫瑰图是弗罗伦斯南丁…

从南丁格尔图到医学发展史

可视化中&#xff0c;前端用于表现不同类目的数据在总和中的占比的场景&#xff0c;往往会采用饼图。 针对数据大小相近&#xff0c;南丁格尔图的呈现会更加美观。 南丁格尔图&#xff0c;又称玫瑰图&#xff0c;是由弗罗伦斯南丁格尔发明。 弗洛伦斯南丁格尔 开创了护理事业…

echarts绘制嵌套环形图(南丁格尔玫瑰图)

根据专业总人数和学院总人数绘制嵌套环形图 首先&#xff0c;echarts的基本步骤 引入js&#xff0c;准备容器&#xff0c;初始化实例&#xff0c; <script src"lib/echarts.min.js"></script><style>.box{width: 900px;height: 500px;background…

Python数据可视化之南丁格尔玫瑰图

文章目录 1. 什么是南丁格尔玫瑰图2. 南丁格尔玫瑰图的绘制 1. 什么是南丁格尔玫瑰图 央视新闻用来展示疫情0增长天数的图就是南丁格尔玫瑰图。 南丁格尔玫瑰图&#xff08;Nightingale rose diagram&#xff09;又名鸡冠花图、极坐标区域图。统计学家和医学改革家佛罗伦斯‧…

R-南丁格尔玫瑰图: 仿制效果最好的疫情玫瑰图

这是到目前为止我觉得讲解最为细致、仿制与色彩改进效果最好的疫情玫瑰图教程。所以特约稿给大家学习&#xff01;作者码字不易&#xff0c;还请多多支持。 Angus,温州医科大学在读博士&#xff0c;急诊医学专业&#xff0c;主攻临床数据库及人工智能在危重症患者的应用。 Easy…

教你做超惊艳的南丁格尔玫瑰图

其实早在今年初&#xff0c;疫情还很严重的时候&#xff0c;人民日报发布的这个图就吸引了广大数据分析者的注意。 今天我们就把这个图的前因后果以及怎么做一次性讲清楚。 玫瑰图的前世今生 这个图学名&#xff1a;南丁格尔玫瑰图&#xff0c;是弗罗伦斯南丁格尔女士发明的…

Python科学绘图 南丁格尔图/玫瑰图

文章目录 Github/GItee仓库地址注意生成数据乱序数据渲染图片为png或jpeg顺序数据 Github/GItee仓库地址 ScienceGallery-GithubScienceGallery-Gitee 注意 数据传入到 pyecharts 的时候&#xff0c;需要自行将数据格式转换成上述 Python 原生的数据格式。方法&#xff1a; …

南丁格尔玫瑰图 With ggplot2【R语言】

前言 之前在饼图中提到过&#xff0c;要整理一下南丁格尔玫瑰图的画法&#x1f611; 南丁格尔玫瑰图又名鸡冠花图、极坐标区域图&#xff0c;是南丁格尔在克里米亚战争期间提交的一份关于士兵死伤的报告时发明的一种图表。南丁格尔玫瑰图是在极坐标下绘制的柱状图&#xff0c;…

echarts最简单的南丁格尔玫瑰图+图例

//图标写在方法里面&#xff08;然后在mounted里展示&#xff09; getEcharts(){ var myChart document.getElementById(‘echarts’); let echarts echarts.init(myChart); var option; var legends this.getlowIncomeData_xData; //图例名字&#xff08;在这里作修改&…

python+matplotlib绘制南丁格尔玫瑰图

实验:绘制南丁格尔玫瑰图   本实验有一定难度,有人说matplotlib绘图和matlab大同小异,我看除了一些函数名相同之外,其他的像参数和使用方法很不一样.另外我不知道是不是在matlab中画玫瑰图直接一个"肉丝"函数就成了,为什么matplotlib里面没有~~   无论如何还是感…

R语言-南丁格尔玫瑰图

简介 南丁格尔玫瑰图&#xff08;Nightingale rose chart&#xff09;即极坐标柱形图&#xff0c;是一种圆形的柱形图。由弗罗伦斯-南丁格尔所发明&#xff0c;普通柱形图的坐标系是直角坐标系&#xff0c;而南丁格尔玫瑰图的坐标系是极坐标系。南丁格尔玫瑰图是在极坐标下绘制…

Tableau——制作南丁格尔玫瑰图

一、适用场景: 需要计算总费用或金额的各个部分构成比例的情况 二、简介&#xff1a; 南丁格尔玫瑰图Nightingale rose diagram是弗罗伦斯南丁格尔所发明的&#xff0c;又名为极区图&#xff0c;是一种圆形的直方图。 如果因为组成部分较多而导致饼图分区多且密集&#xff0…

Tableau 南丁格尔玫瑰图

简介:南丁格尔玫瑰图是弗罗伦斯南丁格尔所发明的。又名为极区图。是一种圆形的直方图。 应用场景&#xff1a;可以看到比饼图更加详细地信息。 参考书目&#xff1a;跟阿达学 Tableau 数据可视化 操作步骤&#xff1a; 以示例-超市为例 1、导出相关数据&#xff08;处理数…

南丁格尔玫瑰图

1、绘制南丁格尔玫瑰图的步骤&#xff1a; 数据准备工作&#xff1a;准备好角度数值和半径数值。 建立画布&#xff0c;并将直角坐标转化为极坐标。并对极坐标进行一定的设置。 使用bar函数进行绘图。 对图形进行美化处理。 2、上代码 import numpy as np import pandas a…

❤echarts 南丁格尔玫瑰图的使用以及南丁格尔玫瑰图详细配置

❤echarts 南丁格尔玫瑰图的使用以及南丁格尔玫瑰图详细配置 1、认识 使用可以参考之前文章&#xff0c;会使用直接跳过1 引入官网的南丁格尔玫瑰图效果如下&#xff1a; 使用函数配置分为三个部分&#xff1a;初始化> 设置配置> 地图使用参数 配置代码如下 option…

【Python】数据分析:如何使用matplotlib和pyecharts制作南丁格尔玫瑰图

目录 一、介绍 二、相关库 三、数据准备 四、pyecahrts代码实现 五、matplotlib代码实现 原文作者&#xff1a;我辈理想版权声明&#xff1a;文章原创&#xff0c;转载时请务必加上[原文超链接](https://blog.csdn.net/qq_15028721?spm1010.2135.3001.5421)、作者信息和本…

南丁格尔图(饼状)

今天来做一个南丁格尔图&#xff0c;参考官网&#xff0c;一会会把源码放上去&#xff0c;注释和详细的解释也会放在最下面供参考理解 基于VScode开发&#xff0c;我用的是子组件不是APP.vue code&#xff1a; <template> <div id"main" :style"{width…