dw网站设计与制作,淘宝的好券网站怎么做,什么是互联网销售,wordpress多大vps从理念上看#xff0c;本质就是增加了圆环弧度的条形图。如上图2。 
需要以下步骤#xff1a; 
数据处理#xff0c;将EXCEL中的数据做成3*N的表格导入系统#xff0c;代码如下#xff1a;library(tidyverse) 
library(stringr)library(ggplot2)library(viridis)
stuper 本质就是增加了圆环弧度的条形图。如上图2。 
需要以下步骤 
数据处理将EXCEL中的数据做成3*N的表格导入系统代码如下library(tidyverse) 
library(stringr)library(ggplot2)library(viridis)
stuper - read.csv(C:/Users/user1/Desktop/20230828/huanbar1.csv) head(stuper)  group   individual    value id1     A       勐海茶 90.14129  12     A 西双版纳香蕉 32.59547  23     A 西双版纳菠萝 23.19559  34     A   易武正山茶 14.17019  45     A   勐海结良茶 13.01186  56     B       保山猪 48.85315  6 
将数据预处理为环形图能够识别的格式代码如下 
empty_bar - 3to_add - data.frame(matrix(NA, empty_bar*nlevels(stuper$group), ncol(stuper)))to_add$group - rep(levels(stuper$group), eachempty_bar)#为数据表添加分组变量stuper - rbind(stuper, to_add) # 合并两个数据stuper - stuper %% arrange(group) # 将数据根据分组进行排序stuper$id - seq(1, nrow(stuper))# 获取每个样本的名称在y轴的位置和倾斜角度label_data - stupernumber_of_bar - nrow(label_data) # 计算条的数量## 每个条上标签的轴坐标的倾斜角度angle - 90 - 360 * (label_data$id-0.5) /number_of_bar label_data$hjust - ifelse( angle  -90, 1, 0) # 调整标签的对其方式label_data$angle - ifelse(angle  -90, angle180, angle) ## 标签倾斜角度## 为数据准备基础弧线的数据base_data - stuper %% group_by(group) %%   summarize(startmin(id), endmax(id) - empty_bar) %%   rowwise() %% mutate(titlemean(c(start, end)))# 为网格标尺准备数据grid_data - base_datagrid_data$end - grid_data$end[c(nrow(grid_data), 1:nrow(grid_data)-1)]  1grid_data$start - grid_data$start - 1grid_data - grid_data[-1,] 
数据梳理清楚后就可以直接画图 
p1 - ggplot(stuper)  ## 添加条形图  geom_bar(aes(xas.factor(id), yvalue, fillgroup),statidentity,           alpha0.8)   ##为条形图添加一些划分等级的线(20/40/60/80)(按比例添加是因为知道满分100)  geom_segment(datagrid_data, aes(x  end, y  80, xend  start, yend  80),               colour  orange, alpha0.5, linewidth0.5 ,inherit.aes  FALSE)  geom_segment(datagrid_data, aes(x  end, y  60, xend  start, yend  60),               colour  orange, alpha0.5, linewidth0.5 ,inherit.aes  FALSE )  geom_segment(datagrid_data, aes(x  end, y  40, xend  start, yend  40),               colour  orange, alpha0.5, linewidth0.5 , inherit.aes  FALSE )  geom_segment(datagrid_data, aes(x  end, y  20, xend  start, yend  20),               colour  orange, alpha0.5, linewidth0.5 , inherit.aes  FALSE )  # 添加文本表示(20/40/60/80)表示每条线的大小  annotate(text, x  rep(max(stuper$id),4), y  c(20, 40, 60, 80),            label  c(20, 40, 60, 80) , colorblack, size3,           angle0, hjust1)   ylim(-100,120)  ## 设置y轴坐标表的取值范围,可流出更大的圆心空白  ## 设置使用的主题并使用极坐标系可视化条形图  theme_minimal()   theme(legend.position  none, # 不要图例        axis.text  element_blank(),# 不要x轴的标签        axis.title  element_blank(), # 不要坐标系的名称        panel.grid  element_blank(), # 不要网格线        plot.margin  unit(rep(-1,4), cm)) ## 整个图与周围的边距  coord_polar()  ## 极坐标系  ## 为条形图添加文本  geom_text(datalabel_data,             aes(xid, yvalue5, labelindividual,hjusthjust),            colorblack,fontfacebold,alpha0.8, size2.5,             angle label_data$angle, inherit.aes  FALSE)   # 为图像添加基础线的信息  geom_segment(database_data, aes(x  start, y  -5, xend  end, yend  -5),               colour  black, alpha0.8, size0.6 , inherit.aes  FALSE )  ## 添加分组文本信息  geom_text(database_data, aes(x  title, y  -18, labelgroup),alpha0.8,            colour  black, size4,fontfacebold, inherit.aes  FALSE)p1 加上汉字的正常显示 
library(showtext)## 使用Windows自带字体font_add(heiti, simhei.ttf)font_add(constan, constan.ttf, italic  constani.ttf