echarts 画雷达图详解1.1实现效果
1.2实现代码
option = {
title: {
text: '雷达图',
textStyle: {
color: 'rgba(221,221,221,1)', //标题颜⾊
fontSize: 14,
lineHeight: 20,
},
// 标题的位置,此时放在图的底边
left: 'center',
top: 'bottom',
},
// 图表的位置
grid: {
position: 'center',
},
tooltip : {
//雷达图的tooltip不会超出div,也可以设置position属性,position定位的tooltip
confine: true,
enterable: true, //⿏标是否可以移动到tooltip区域内
},
radar: {
shape: 'circle',
splitNumber: 8, // 雷达图圈数设置
name: {
textStyle: {
color: '#838D9E',
},
},
// 设置雷达图中间射线的颜⾊
axisLine: {
lineStyle: {
color: 'rgba(131,141,158,.1)',
fontweight取值},
},
indicator: [{
name: '健康状态', max: 30,
//若将此属性放在radar下,则每条indicator都会显⽰圈上的数值,放在这⼉,只在通信这条indicator上显⽰
axisLabel: {
show: false,
fontSize: 12,
color: '#838D9E',
showMaxLabel: false, //不显⽰最⼤值,即外圈不显⽰数字30
showMinLabel: true, //显⽰最⼩数字,即中⼼点显⽰0
},
},
{ name: '健康状态', max: 30},
{ name: '健康状态', max: 30},
{ name: '健康状态', max: 30},
{ name: '健康状态', max: 30},
{ name: '健康状态', max: 30},
{ name: '健康状态', max: 30},
{ name: '健康状态', max: 30},
{ name: '健康状态', max: 30},
{ name: '健康状态', max: 30},
],
//雷达图背景的颜⾊,在这⼉随便设置了⼀个颜⾊,完全不透明度为0,就实现了透明背景
splitArea : {
show : false,
areaStyle : {
color: 'rgba(255,0,0,0)', // 图表背景的颜⾊
},
},
splitLine : {
show : true,
lineStyle : {
width : 1,
color : 'rgba(131,141,158,.1)', // 设置⽹格的颜⾊
},
},
},
series: [{
name: '雷达图', // tooltip中的标题
type: 'radar', //表⽰是雷达图
symbol: 'circle', // 拐点的样式,还可以取值'rect','angle'等
symbolSize: 8, // 拐点的⼤⼩
areaStyle: {
normal: {
width: 1,
opacity: 0.2,
},
},
data: [
{
value: [17, 24, 27, 29, 26, 16, 13, 17, 25,12],
name: '2018-07',
/
/ 设置区域边框和区域的颜⾊
itemStyle: {
normal: {
color: 'rgba(255,225,0,.3)',
lineStyle: {
color: 'rgba(255,225,0,.3)',
},
},
},
},
],
}],
}
2.1实现效果
2.2实现代码
// 指定图表的配置项和数据
var option = {
backgroundColor: 'rgba(204,204,204,0.7 )',
// 背景⾊,默认⽆背景 rgba(51,255,255,0.7)
title: {
text: '健康状态统计',
link: '',
target: 'blank',
top: '5%',
left: '3%',
textStyle: {
color: '#fff',
fontSize: 20,
}
},
legend: { // 图例组件
show: true,
icon: 'rect',
/
/ 图例项的 icon。ECharts 提供的标记类型包括 'circle', 'rect', 'roundRect', 'triangle', 'diamond', 'pin', 'arrow'也可以通过 'image://url' 设置为图⽚,其中 url 为图⽚的链接,或者 dataURI。可以通过 'path://' 将图标设置为任意的⽮量路径。
top: '40%',
// 图例距离顶部边距
left: '15%',
// 图例距离左侧边距
itemWidth: 10,
// 图例标记的图形宽度。[ default: 25 ]
itemHeight: 10,
// 图例标记的图形⾼度。[ default: 14 ]
itemGap: 30,
// 图例每项之间的间隔。[ default: 10 ]横向布局时为⽔平间隔,纵向布局时为纵向间隔。
orient: 'vertical',
// 图例列表的布局朝向,'horizontal'为横向,''为纵向.
textStyle: { // 图例的公⽤⽂本样式。
fontSize: 15,
color: '#fff'
},
data: [{ // 图例的数据数组。数组项通常为⼀个字符串,每⼀项代表⼀个系列的 name(如果是饼图,也可以是饼图单个数据的 name)。图例组件会⾃动根据对应系列的图形标记(symbol)来绘制⾃⼰的颜⾊和标记,特殊字符串 ''(空字符串) name: '男',
// 图例项的名称,应等于某系列的name值(如果是饼图,也可以是饼图单个数据的 name)。
icon: 'rect',
// 图例项的 icon。
textStyle: { // 图例项的⽂本样式。
color: 'rgba(51,0,255,1)',
fontWeight: 'bold' // ⽂字字体的粗细,可选'normal','bold','bolder','lighter'
}
},
{
name: '⼥',
icon: 'rect',
textStyle: {
color: 'rgba(255,0,0,1)',
fontWeight: 'bold' // ⽂字字体的粗细,可选'normal','bold','bolder','lighter'
}
}],
},
radar: [{ // 雷达图坐标系组件,只适⽤于雷达图。
center: ['50%', '50%'],
// 圆中⼼坐标,数组的第⼀项是横坐标,第⼆项是纵坐标。[ default: ['50%', '50%'] ]
radius: 160,
// 圆的半径,数组的第⼀项是内半径,第⼆项是外半径。
startAngle: 90,
// 坐标系起始⾓度,也就是第⼀个指⽰器轴的⾓度。[ default: 90 ]
name: { // (圆外的标签)雷达图每个指⽰器名称的配置项。
formatter: '{value}',
textStyle: {
fontSize: 15,
color: '#000'
}
},
nameGap: 15,
// 指⽰器名称和指⽰器轴的距离。[ default: 15 ]
splitNumber: 8,
// (这⾥是圆的环数)指⽰器轴的分割段数。[ default: 5 ]
shape: 'circle',
// 雷达图绘制类型,⽀持 'polygon'(多边形) 和 'circle'(圆)。[ default: 'polygon' ]
axisLine: { // (圆内的⼏条直线)坐标轴轴线相关设置
lineStyle: {
color: '#fff',
// 坐标轴线线的颜⾊。
width: 1,
// 坐标轴线线宽。
type: 'solid',
// 坐标轴线线的类型。
}
},
splitLine: { // (这⾥是指所有圆环)坐标轴在 grid 区域中的分隔线。
lineStyle: {
color: '#fff',
// 分隔线颜⾊
width: 2,
// 分隔线线宽
}
},
splitArea: { // 坐标轴在 grid 区域中的分隔区域,默认不显⽰。
show: true,
areaStyle: { // 分隔区域的样式设置。
color: ['rgba(250,250,250,0.3)', 'rgba(200,200,200,0.3)'],
// 分隔区域颜⾊。分隔区域会按数组中颜⾊的顺序依次循环设置颜⾊。默认是⼀个深浅的间隔⾊。
}
},
indicator: [{ // 雷达图的指⽰器,⽤来指定雷达图中的多个变量(维度),跟data中 value 对应
name: '⾼中',
// 指⽰器名称
max: 15000,
// 指⽰器的最⼤值,可选,建议设置
//color: '#fff' // 标签特定的颜⾊。
},
{
name: '专科',
max: 10000
},
{
name: '本科',
max: 8000
},
{
name: '硕⼠',
max: 2000
},
{
name: '博⼠',
max: 500
}]
}],
series: [{
name: '雷达图',
// 系列名称,⽤于tooltip的显⽰,legend 的图例筛选,在 setOption 更新数据和配置项时⽤于指定对应的系列。
type: 'radar',
// 系列类型: 雷达图
itemStyle: { // 折线拐点标志的样式。
normal: { // 普通状态时的样式
lineStyle: {
width: 1
},
opacity: 0.2
},
emphasis: { // ⾼亮时的样式
lineStyle: {
width: 5
},
opacity: 1
}
},
data: [{ // 雷达图的数据是多变量(维度)的
name: '⼥',
// 数据项名称
value: [11035, 6013, 5067, 1520, 184],
// 其中的value项数组是具体的数据,每个值跟 radar.indicator ⼀⼀对应。
symbol: 'circle',
// 单个数据标记的图形。
symbolSize: 5,
// 单个数据标记的⼤⼩,可以设置成诸如 10 这样单⼀的数字,也可以⽤数组分开表⽰宽和⾼,例如 [20, 10] 表⽰标记宽为20,⾼为10。 label: { // 单个拐点⽂本的样式设置
normal: {
show: true,
// 单个拐点⽂本的样式设置。[ default: false ]
position: 'top',
// 标签的位置。[ default: top ]
distance: 5,
// 距离图形元素的距离。当 position 为字符描述值(如 'top'、'insideRight')时候有效。[ default: 5 ]
color: 'rgba(255,0,0,1)',
// ⽂字的颜⾊。如果设置为 'auto',则为视觉映射得到的颜⾊,如系列⾊。[ default: "#fff" ]
fontSize: 14,
// ⽂字的字体⼤⼩
formatter: function(params) {
return params.value;
}
}
},
itemStyle: { // 单个拐点标志的样式设置。
normal: {
borderColor: 'rgba(255,0,0,1)',
// 拐点的描边颜⾊。[ default: '#000' ]
borderWidth: 3,
// 拐点的描边宽度,默认不描边。[ default: 0 ]
}
},
lineStyle: { // 单项线条样式。
normal: {
opacity: 0.5 // 图形透明度
}
},
areaStyle: { // 单项区域填充样式
normal: {
color: 'rgba(255,0,0,0.6)' // 填充的颜⾊。[ default: "#000" ]
}
}
},
{
name: '男',
value: [13408, 5065, 5947, 856, 302],
symbol: 'circle',
symbolSize: 5,
label: {
normal: {
show: true,
position: 'top',
distance: 5,
color: 'rgba(51,0,255,1)',
fontSize: 14,
formatter: function(params) {
return params.value;
}
}
},
itemStyle: {
normal: {
borderColor: 'rgba(51,0,255,1)',
borderWidth: 3,
}
},
lineStyle: {
normal: {
opacity: 0.5
}
},
areaStyle: {
normal: {
color: 'rgba(51,0,255,0.5)'
}
}
}]
},
]
};
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论