南丁格尔玫瑰图

目录

由来

效果图

echarts官网找相似图

将南丁格尔玫瑰图引进html页面中

引入echarts

准备容器

初始化echarts实例对象

指定配置项和数据(官网给的option)

将配置项给echarts

自定义南格丁尔玫瑰图

修改颜色

修改玫瑰图大小

修改图的模式为半径模式

数据更换


由来

南丁格尔玫瑰图是弗罗伦斯·南丁格尔所发明的。又名为极区图。是一种圆形的直方图南丁格尔自己常昵称这类图为鸡冠花图(coxcomb),并且用以表达军医院季节性的死亡率,对象是那些不太能理解传统统计报表的公务人员。

效果图

echarts官网找相似图

我们从echarts官网找到相似图形

将南丁格尔玫瑰图引进html页面中

下载echarts

引入echarts

注意:这里是本人引入的路径,因人而异,路径问题注意一下

javascript 复制代码
<script src="./js/echarts.min.js"></script>
准备容器
html 复制代码
<div class="box" style="width: 500px; height: 500px; border: 1px solid gainsboro; margin: 100px auto;"></div>
初始化echarts实例对象
javascript 复制代码
const mycharts = echarts.init(document.querySelector('.box'))
指定配置项和数据(官网给的option)
javascript 复制代码
 const mycharts = echarts.init(document.querySelector('.box'))
        option = {
  legend: {
    top: 'bottom'
  },
  toolbox: {
    show: true,
    feature: {
      mark: { show: true },
      dataView: { show: true, readOnly: false },
      restore: { show: true },
      saveAsImage: { show: true }
    }
  },
  series: [
    {
      name: 'Nightingale Chart',
      type: 'pie',
      radius: [50, 250],
      center: ['50%', '50%'],
      roseType: 'area',
      itemStyle: {
        borderRadius: 360
      },
      data: [
        { value: 40, name: 'rose 1' },
        { value: 38, name: 'rose 2' },
        { value: 32, name: 'rose 3' },
        { value: 30, name: 'rose 4' },
        { value: 28, name: 'rose 5' },
        { value: 26, name: 'rose 6' },
        { value: 22, name: 'rose 7' },
        { value: 18, name: 'rose 8' }
      ]
    }
  ]
};
将配置项给echarts
javascript 复制代码
myChart.setOption(option)

引入自己的页面成功

自定义南格丁尔玫瑰图

将图修成自己想要的样子

修改颜色

color数组中放入自己想要定义的颜色

javascript 复制代码
color: ['#006cff', '#60cda0', '#ed8884', '#ff9f7f', '#0096ff', '#9fe6b8', '#32c5e9', '#1d9dff'],

直接放在option中

修改玫瑰图大小

在刚才的option中找到**radius,**radius用来修改图的大小

javascript 复制代码
radius: ['10%', '70%'],
修改图的模式为半径模式

在刚才的option中找到roseType

javascript 复制代码
roseType: "radius",
数据更换

在option中找到series对象 自定义 data对象

前面的value的数值代表了每一格图的大小

javascript 复制代码
          { value: 40, name: '南' },
          { value: 40, name: '丁' },
          { value: 40, name: '格' },
          { value: 40, name: '尔' },
          { value: 40, name: '玫' },
          { value: 40, name: '瑰' },
          { value: 40, name: '图' },
          { value: 40, name: '!' }

在option中找到series对象, itemStyle里面的 borderRadius

javascript 复制代码
 borderRadius: 360

这样就完成了南丁格尔玫瑰图

相关推荐
丁哥1 小时前
99.9%纯AI 做了一个ICO图标生成器(免费 全尺寸 不限文件大小)2ICO.CN欢迎品鉴
前端
兆子龙1 小时前
React Native 完全入门:从原理到实战
前端·javascript
哇哇哇哇1 小时前
vue3 watch解析
前端
SuperEugene1 小时前
Vite 实战教程:alias/env/proxy 配置 + 打包优化避坑|Vue 工程化必备
前端·javascript·vue.js
兆子龙1 小时前
一文彻底搞懂 OpenClaw 的架构设计与运行原理(万字长文)
javascript
leafyyuki1 小时前
用 AI 和 SDD 重构 Vue2 到 Vue3 的实践记录
前端·人工智能
boooooooom2 小时前
别再用错 ref/reactive!90%程序员踩过的响应式坑,一文根治
javascript·vue.js·面试
德育处主任2 小时前
『NAS』一句话生成网页,在NAS部署UPage
前端·javascript·aigc
前端老兵AI2 小时前
前端工程化实战:Vite + ESLint + Prettier + Husky 从零配置(2026最新版)
前端·vite
bluceli2 小时前
浏览器渲染原理与性能优化实战指南
前端·性能优化