赞
踩
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Document</title>
- </head>
- <style>
- * {
- padding: 0;
- margin: 0;
- }
- canvas {
- border: 1px solid rgb(32, 30, 30);
- }
- </style>
- <body>
- <!-- canvas画布:双闭合标签 -->
- <!-- canvas默认标签宽度与高度 300 * 150 -->
- <!-- 在canvas中添加文字内容没有任何意义,只能通过js -->
- <!-- canvas的高度和宽度只能通过标签属性来设置 -->
- <!-- 不能通过样式设置宽度和高度 -->
- <canvas width="600" height="400"></canvas>
- </body>
- </html>
- <script>
- // 通过js当中的笔去完成
- let canvas = document.querySelector('canvas');
- // 获取画布的笔(上下文)
- let ctx = canvas.getContext('2d');
- // 可以获取一些方法对象
- // console.log(ctx)
- // 绘制线段:绘制线段起点设置
- ctx.moveTo(100,100);
- // 其他点设置
- ctx.lineTo(100,200);
- ctx.lineTo(200,100);
- // 设置图形的填充的颜色,下面的fill是一起的
- ctx.fillStyle = 'red';
- ctx.fill();
- // 设置线段的颜色
- ctx.strokeStyle = 'pink';
- // 设置线段的宽度
- ctx.lineWidth = '20';
- // closePath方法表示起点和最终结束点的连接
- ctx.closePath();
- // stroke方法表示起点的其他点的连接
- ctx.stroke();
- </script>
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Document</title>
- </head>
- <style>
- * {
- padding: 0;
- margin: 0;
- }
- canvas {
- border: 1px solid rgb(32, 30, 30);
- }
- </style>
- <body>
-
- <canvas width="600" height="400"></canvas>
- </body>
- </html>
- <script>
- // 获取节点
- let canvas = document.querySelector('canvas');
- // 获取上下文
- let ctx = canvas.getContext('2d');
- // 绘制矩形的第一种方法:参数为x,y,w,h;x:表示距离水平轴的距离,y表示距离上面顶部的距离,w表示100宽度,h表示高度200
- // 这种方法是不能设置填充颜色的
- ctx.strokeRect(100,200,100,200);
- // 第二种:填充矩形,参数和上面一样
- // 注意:必须要在绘制图形之前填充颜色
- ctx.fillStyle = 'skyblue';
- ctx.fill();
- ctx.fillRect(300,200,100,200);
-
- </script>
arc(x,y,redius,startAngle,endAngle,anticlockwise)
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Document</title>
- </head>
- <style>
- * {
- padding: 0;
- margin: 0;
- }
- canvas {
- border: 1px solid rgb(32, 30, 30);
- }
- </style>
- <body>
-
- <canvas width="600" height="400"></canvas>
- </body>
- </html>
- <script>
- // 获取canvas
- let canvas = document.querySelector('canvas')
- // 获取上下文
- let ctx = canvas.getContext('2d')
- // 绘制圆形
- // 开始绘制
- ctx.beginPath();
- // 绘制圆形的方法:x,y,r,起始弧度,结束弧度,是否逆时针,360°=2.PI
- ctx.arc(100,100,50,0,2 * Math.PI,true);
- // 是指填充颜色
- ctx.fillStyle = 'red';
- ctx.fill()
- // 绘制圆
- ctx.stroke();
-
-
- // 绘制第二个圆
- // 注意:弧度有一个计算
- // 2 * PI * 弧度 = 360
- ctx.beginPath();
- ctx.arc(200,200,50,0,1,false);
- ctx.stroke();
-
- </script>
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Document</title>
- </head>
- <style>
- * {
- padding: 0;
- margin: 0;
- }
- canvas {
- border: 1px solid rgb(32, 30, 30);
- }
- </style>
- <body>
-
- <canvas width="600" height="400"></canvas>
- </body>
- </html>
- <script>
- // 获取节点
- let canvas = document.querySelector('canvas')
- // 获取上下文
- let ctx = canvas.getContext('2d')
- // 绘制矩形
- ctx.fillRect(100,200,100,200);
- // 清除画布
- // 清除全部画布
- // ctx.clearRect(0,0,600,400);
- // 清除部分画布
- // 表示x,y,宽度50,高度100
- ctx.clearRect(100,200,50,100);
- // 绘制文字
- // 设置文字大小
- ctx.font = "20px 微软雅黑";
- ctx.fillStyle = 'red';
- // 绘制文字
- // 参数表示:需要的文字,x,y坐标
- ctx.fillText("数据可视化",50,20)
-
- </script>
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Document</title>
- </head>
- <style>
- * {
- padding: 0;
- margin: 0;
- }
- /* canvas {
- border: 1px solid rgb(201, 109, 109);
- } */
- </style>
- <body>
-
- <canvas width="800" height="420"></canvas>
- </body>
- </html>
- <script>
- // 获取节点
- let canvas = document.querySelector('canvas');
- // 获取上下文
- let ctx = canvas.getContext('2d');
- // 绘制文字
- ctx.font = '16px 微软雅黑';
- ctx.fillText('数据可视化',50,80);
- // 绘制主线
- ctx.moveTo(100,100);
- ctx.lineTo(100,400);
- ctx.lineTo(700,400);
- // 连接点
- ctx.stroke();
-
- // 其他线
- ctx.moveTo(100,100);
- ctx.lineTo(700,100);
- ctx.fillText('150',70,110);
- ctx.moveTo(100,160);
- ctx.lineTo(700,160);
- ctx.fillText('120',70,170);
- ctx.moveTo(100,220);
- ctx.lineTo(700,220);
- ctx.fillText('90',70,230);
- ctx.moveTo(100,280);
- ctx.lineTo(700,280);
- ctx.fillText('60',70,290);
- ctx.moveTo(100,340);
- ctx.lineTo(700,340);
- ctx.fillText('30',70,350);
- ctx.fillText('0',80,400);
- ctx.stroke();
-
- // 绘制水平轴底部的线
- ctx.moveTo(250,400);
- ctx.lineTo(250,410);
- // 底部的文字
- ctx.fillText('食品',170,415);
- ctx.moveTo(400,400);
- ctx.lineTo(400,410);
- ctx.fillText('数码',310,415);
- ctx.moveTo(550,400);
- ctx.lineTo(550,410);
- ctx.fillText('服饰',460,415);
- ctx.fillText('箱包',600,415);
- ctx.stroke();
-
- // 绘制矩形
- ctx.fillStyle = 'red'
- ctx.fillRect(120,200,100,200)
- </script>
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Document</title>
- </head>
- <style>
- * {
- margin: 0;
- padding: 0;
- }
- .box {
- width: 800px;
- height: 800px;
- }
- </style>
- <body>
- <!-- svg双闭合标签:默认宽度和高度300*150,svg绘制图形务必在svg标签内部绘制图形 -->
- <svg class="box">
- <!-- x1 y1第一个点的坐标,x2 y2第二个点的坐标,stroke表示绘制
- line标签用于绘制直线
- -->
- <line x1="100" y1="100" x2="200" y2="200" stroke="red"></line>
- <!-- 绘制折线 -->
- <!-- <polyline points="x1 y1 x2 y2 x3 y3"></polyline> -->
- <!-- 折线默认是填充黑色,fill-opacity去除填充,stroke表示折线颜色 -->
- <polyline points="300 300, 50 100, 120 400" fill-opacity="0" stroke="cyan"></polyline>
- <!-- 绘制矩形 -->
- <!-- fill属性:表示填充颜色 -->
- <rect x="400" y="400" width="150" height="50" fill="pink"></rect>
- <!-- 绘制圆型 -->
- <!-- cx,cy表示圆心,r半径,style表示样式 -->
- <circle cx="370" cy="95" r="50" style="stroke: black; fill:none" ></circle>
-
- <!-- 绘制椭圆 -->
- <!-- cx,cy表示圆心,rx表示x轴半径,ry表示y轴半径 -->
- <ellipse cx="500" cy="500" rx="100" ry="50" style="fill: black;"></ellipse>
- <!-- 绘制多边形 -->
- <!-- <polygon points="x1 y1, x2 y2, x3 y3"></polygon> -->
- <polygon points="600 100, 300 400, 750 100" stroke="red" fill-opacity="0"></polygon>
-
- <!-- 绘制任意图型 -->
- <!-- M:移动到初始位置 L:画线 Z:将结束和开始点闭合-->
- <!-- <path d="
- M x1 y1
- L x2 y2
- L x3 y3
- Z
- ">
- </path> -->
- <path d="
- M 10 10
- L 400 20
- L 30 120
- L 50 99
- Z
- ">
-
- </path>
- </svg>
- </body>
- </html>
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Document</title>
- <!-- 引入echarts依赖包 -->
- <script src="https://cdn.staticfile.net/echarts/4.7.0/echarts.min.js"></script>
- </head>
- <style>
- * {
- margin: 0;
- padding: 0;
- }
- div {
- width: 800px;
- height: 400px;
- }
- </style>
- <body>
- <!-- 准备一个容器用于显示图标 -->
- <div></div>
- </body>
- </html>
- <script>
- // 基于准备好的dom初始化echarts实例
- let dom = document.querySelector('div');
- // 创建echarts实例
- let mycharts = echarts.init(dom);
- // console.log(mycharts);
- // 指定图表 的配置项与数据
- mycharts.setOption({
- // 图表的标题
- title:{
- // 主标题的设置
- text:'数据可视化',
- // 子标题
- subtext:'echarts基本使用',
- // 主标题的颜色
- textStyle:{
- color:'cyan'
- },
- // 设置标题的位置
- left:'center',
- },
- // x轴的配置项
- xAxis:{
- // 数据
- // data表示底部数据的设置
- data:['衣服','直播','游戏','电影']
- },
- // y轴的配置项
- yAxis:{
- // 显示y轴的线
- axisLine:{
- show:true
- },
- // 显示y轴的刻度
- axisTick:{
- show:true
- },
- },
- // 系列的设置:绘制什么样类型的图表,数据的展示都在这里
- series:[
- {
- // 图表类型的设置,bar表示柱状图,pie表示饼状图,line折线图
- type:'bar',
- data:[10,20,30,40],
- // 表示柱状图的颜色
- color:'blue',
- }
- ]
-
- })
- </script>
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Document</title>
- <!-- 引入echarts依赖包 -->
- <script src="https://cdn.staticfile.net/echarts/4.7.0/echarts.min.js"></script>
- </head>
- <style>
- * {
- margin: 0;
- padding: 0;
- }
- div {
- width: 800px;
- height: 400px;
- }
- </style>
- <body>
- <!--准备一个容器用于显示图标 -->
- <div class="box1"></div>
- <div class="box2"></div>
- </body>
- </html>
- <script>
- // 基于准备好的dom初始化echarts实例
- let dom1 = document.querySelector('.box1');
- let dom2 = document.querySelector('.box2')
- // 创建echarts实例
- let mycharts1 = echarts.init(dom1);
- let mycharts2 = echarts.init(dom2);
- // console.log(mycharts);
- // 指定图表 的配置项与数据
- mycharts1.setOption({
- // 图表的标题
- title:{
- // 主标题的设置
- text:'数据可视化',
- // 子标题
- subtext:'echarts基本使用',
- // 主标题的颜色
- textStyle:{
- color:'cyan'
- },
- // 设置标题的位置
- left:'center',
- },
- // x轴的配置项
- xAxis:{
- // 数据
- // data表示底部数据的设置
- data:['衣服','直播','游戏','电影']
- },
- // y轴的配置项
- yAxis:{
- // 显示y轴的线
- axisLine:{
- show:true
- },
- // 显示y轴的刻度
- axisTick:{
- show:true
- },
- },
- // 系列的设置:绘制什么样类型的图表,数据的展示都在这里
- series:[
- {
- // 图表类型的设置,bar表示柱状图,pie表示饼状图,line折线图
- type:'bar',
- data:[10,20,30,40],
- // 表示柱状图的颜色
- color:'blue',
- }
- ]
-
- });
- // 第二个图表的配置项
- mycharts2.setOption({
- title:{
- // 主标题
- text:'折线图',
- left:'center',
- textStyle:{
- color:'red',
- },
- // 子标题
- subtext:'echarts基本使用',
- subtextStyle:{
- color:'skyblue',
- }
- },
- // x轴
- xAxis:{
- data:['星期一','星期二','星期三','星期四','星期五','星期六','星期日']
- },
- // y轴
- yAxis:{
-
- },
- // 图表类型与数据
- series:[
- {
- type:'line',
- data:[10,20,15,44,2,19,100],
- }
- ]
- })
- </script>
series:[ { // 图表类型的设置,bar表示柱状图,pie表示饼状图,line折线图 type:'bar', data:[10,20,30,40], // 表示柱状图的颜色 color:'blue', }, { // 折线图 type:'line', data:[10,20,30,40] }, { // 饼图 type:'pie', // name:名称,value:值,显示文字 data:[{name:'x',value:10},{name:'y',value:20},{name:'z',value:30},{name:'t',value:40}], // 饼图的宽度和高度 width:150, height:150, // 饼图的位置 left:150, top:100, // 表示饼图的半径 radius:25, } ]
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Document</title>
- <!-- 引入echarts依赖包 -->
- <script src="https://cdn.staticfile.net/echarts/4.7.0/echarts.min.js"></script>
- </head>
- <style>
- * {
- margin: 0;
- padding: 0;
- }
- div {
- width: 800px;
- height: 400px;
- }
- </style>
- <body>
- <!--准备一个容器用于显示图标 -->
- <div class="box1"></div>
-
- </body>
- </html>
- <script>
- // 基于准备好的dom初始化echarts实例
- let dom1 = document.querySelector('.box1');
-
- // 创建echarts实例
- let mycharts1 = echarts.init(dom1);
- // 数据集
- let data = [
- // 第一个是衣服,第二个是10表示柱状图数据,第二个表示折线图数据,第三个表示饼图名字是x的数据
- ["衣服",10,46,'x',30],
- ["直播",20,28,'y',40],
- ["游戏",30,39,'z',20],
- ["电影",5,10,'t',10],
- ]
- // console.log(mycharts);
- // 指定图表 的配置项与数据
- mycharts1.setOption({
- // 设置字符集
- dataset:{
- // 数据源
- source:data
- },
- // 图表的标题
- title:{
- // 主标题的设置
- text:'数据可视化',
- // 子标题
- subtext:'echarts基本使用',
- // 主标题的颜色
- textStyle:{
- color:'cyan'
- },
- // 设置标题的位置
- left:'center',
- },
- // x轴的配置项
- xAxis:{
- // 数据
- // data表示底部数据的设置
- data:['衣服','直播','游戏','电影']
- },
- // y轴的配置项
- yAxis:{
- // 显示y轴的线
- axisLine:{
- show:true
- },
- // 显示y轴的刻度
- axisTick:{
- show:true
- },
- },
- // 系列的设置:绘制什么样类型的图表,数据的展示都在这里
- series:[
- {
- // 图表类型的设置,bar表示柱状图,pie表示饼状图,line折线图
- type:'bar',
- // data:[10,20,30,40],
- // 表示柱状图的颜色
- color:'blue',
- encode:{
- // encode表示可以定义data中的数据表示那个表,y表示data中柱状图的数据位置
- y:1
- }
- },
- {
- // 折线图
- type:'line',
- // data:[10,20,30,40]
- encode:{
- y:2
- }
- },
- {
- // 饼图
- type:'pie',
- // name:名称,value:值,显示文字
- // data:[{name:'x',value:10},{name:'y',value:20},{name:'z',value:30},{name:'t',value:40}],
- // 饼图的宽度和高度
- width:150,
- height:150,
- // 饼图的位置
- left:120,
- top:150,
- // 表示饼图的半径
- radius:25,
- encode:{
- // 饼图旁边的文字
- itemName:3,
- value:4
- }
- }
- ]
-
- });
- // 第二个图表的配置项
-
- </script>
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Document</title>
- <!-- 引包 -->
- <script src="https://cdn.staticfile.net/echarts/4.7.0/echarts.min.js"></script>
- </head>
- <style>
- * {
- margin: 0;
- padding: 0;
- }
- .box {
- width: 100%;
- height: 500px;
- /* border: 1px solid rgb(68, 60, 60); */
- }
- </style>
- <body>
- <div class="box"></div>
- </body>
- </html>
- <script>
- // 获取容器
- let dom = document.querySelector('.box');
- // 初始化
- let mycharts = echarts.init(dom);
- // console.log(mycharts);
- // 配置数据
- mycharts.setOption({
- // 标题
- title:{
- text:'echarts组件'
- },
- xAxis:{
- data:['游戏','电影','直播','娱乐']
- },
- yAxis:{},
- series:[
- {
- name:'柱状图',
- type:'bar',
- data:[20,30,40,50]
- },
- {
- name:'折线图',
- type:'line',
- data:[30,40,50,60]
- }
- ],
- // 提示组件
- tooltip:{
- // 提示框文字的颜色
- textStyle:{
- color:'red'
- }
- },
- // 系列切换组件
- legend:{
- data:['柱状图','折线图']
- },
- // 工具栏组件
- toolbox:{
- show:true,
- feature:{
- saveAsImage:{},
- dataZoom:{
- yAxisIndex:"none"
- },
- dataView:{
- readOnly:false
- },
- magicType:{
- type:['line','bar']
- },
- restore:{},
- }
- },
- // 缩放
- dataZoom:{},
- // 调整图表布局
- grid:{
- left:30
- }
- })
- </script>
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Document</title>
- <!-- 引包 -->
- <script src="https://cdn.staticfile.net/echarts/4.7.0/echarts.min.js"></script>
- </head>
- <style>
- * {
- margin: 0;
- padding: 0;
- }
- .box {
- width: 100%;
- height: 500px;
- /* border: 1px solid rgb(68, 60, 60); */
- }
- </style>
- <body>
- <div class="box"></div>
- </body>
- </html>
- <script>
- // 获取容器
- let dom = document.querySelector('.box');
- // 初始化
- let mycharts = echarts.init(dom);
- // 一个坐标体系:散点图
- mycharts.setOption({
- // 标题
- title:{
- text:'一个坐标系'
- },
- // x轴
- xAxis:{
- // 可以是数据更加聚合
- type:'category'
- },
- // y轴
- yAxis:{},
- // 散点图
- series:[
- {
- type:'scatter',
- // 散点图数据
- data:[
- [10,20],
- [30,64],
- [20,16],
- [78,56],
- ]
- }
- ]
- })
- </script>
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Document</title>
- <!-- 引包 -->
- <script src="https://cdn.staticfile.net/echarts/4.7.0/echarts.min.js"></script>
- </head>
- <style>
- * {
- margin: 0;
- padding: 0;
- }
- .box {
- width: 100%;
- height: 500px;
- /* border: 1px solid rgb(68, 60, 60); */
- }
- </style>
- <body>
- <div class="box"></div>
- </body>
- </html>
- <script>
- // 获取容器
- let dom = document.querySelector('.box');
- // 初始化
- let mycharts = echarts.init(dom);
- // 双坐标
- mycharts.setOption({
- title:{
- text:'双坐标'
- },
- xAxis:{
- data:['游戏','直播','经济','娱乐']
- },
- yAxis:[
- {
- // 显示y轴的线
- axisLine:{
- show:true
- },
- // 显示y轴的刻度
- axisTick:{
- show:true
- }
- },
- {
- // 显示y轴的线
- axisLine:{
- show:true
- },
- // 显示y轴的刻度
- axisTick:{
- show:true
- }
- }
- ],
- series:[
- {
- type:'line',
- data:[10,20,30,40],
- // 表示折线图用的是第一个y轴,索引值为0的y轴
- yAxisIndex:0,
- },
- {
- type:'bar',
- data:[5,10,20,30],
- // 表示柱状图用的是第二个y轴
- yAxisIndex:1
- }
- ]
- })
- </script>
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。