js图表库之Plotly.js

一、js有三种图表库,Plotly.js是其中一种。

Plotly.js拥有四十多种图表类型,包括3D地图,svg地图,统计图等

二、Plotly的使用

(一)准备工作,引入该js文件

  • 引入到页面:
<script src="js/plotly.js-2.25.1/dist/plotly.js"></script>

(二)散点图尝试

<body>
<div id="myChart" width="70%">图表要用的容器</div>
<script>
//首先确定横纵列表的数据,这里以我的两年来的绩点作为数据,后两年为估计
var yMyGrade = [3.43,3.6,3.66,2.99,2.5,2.7,3.0,2.0];
var XIterm = ["第一学期","第二学期","第三学期","第四学期","第五学期","第六学期","第七学期","第八学期"];
//定义数据
var data = [{
    x: XIterm,
    y: yMyGrade,
    mode: "markers"
}]
//定义布局
var layTo = {
    xaxis:{range:XIterm,title:"学期"},//定义x轴的标题和范围
    yaxis:{range: [1.5,4],title:"绩点"},//定义散点图的y轴标题和范围
    title: "学期成绩涨落散点图"//定义散点图的标题
}
//调用plotly
Plotly.newPlot("myChart",data,layTo);
</script>
<body>

 (三)折线图

  • 方式大概相同,只有数据确定中mode部分略有不同,注意即可
<body>
<div id="myChart" width="70%">图表要用的容器</div>
<script>
//首先确定横纵列表的数据,这里以我的两年来的绩点作为数据,后两年为估计
var yMyGrade = [3.43,3.6,3.66,2.99,2.5,2.7,3.0,2.0];
var XIterm = ["第一学期","第二学期","第三学期","第四学期","第五学期","第六学期","第七学期","第八学期"];
//定义数据
var data = [{
    x: XIterm,
    y: yMyGrade,
    mode: "lines",
    type: "scatter"//类型,直译为分散;
}]
//定义布局
var layTo = {
    xaxis:{range:XIterm,title:"学期"},//定义x轴的标题和范围
    yaxis:{range: [1.5,4],title:"绩点"},//定义散点图的y轴标题和范围
    title: "学期成绩涨落散点图"//定义散点图的标题
}
//调用plotly
Plotly.newPlot("myChart",data,layTo);
</script>
<body>

  •  下面条形图,仅展示不同部分代码
vvar data = [{
    x: XIterm,
    y: yMyGrade,
    type: "bar",

}]

  •  饼状图
//定义数据
var data = [{
    labals: XIterm,
    values: yMyGrade,//用饼状图将xy改为labals和values即可
    type: "pie", //类型饼状图

}]
//定义布局
var layTo = {
    title: "学期成绩涨落散点图"//定义饼状图只需要标题
}
//调用plotly
Plotly.newPlot("myChart",data,layTo);

 三、Chart.js图表库

该图表库包括的图表类型很常用一共九种:散点图、折线图、饼图、甜甜圈图、条形图、气泡图、面积图、雷达图、混合图

四、Chart.js的使用

(一)使用前的准备

<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.9.4/Chart.js">
  • 将要绘制的地方用<canvas>标签标注出来
 <canvas id="chartsTest"></canvas>
  • 用Charts的经典结构是:

var myData = new Chart("chartsTest",{

  type: "",

  data: {}

  option:{}

})

  • 结构看起来短小精悍,其实当中最为玄妙,下面让我们来一块探究下其中的组成部分。
  •  options当中可以有哪些结构?
  1. events:["click"|"mousemove"|"touchstart"等等]规定图标的绘制会响应哪些事件。
  2. onHover: function (){};  当任何事件触发图表时执行的函数;
  3. onClick:function(){};当"mouseup"和"click"事件触发图表时要执行的函数。
  4. tooltips:{} 设置人将鼠标悬停到图表交互的内容上时的交互模式,里面可以填的值有
  5. mode:"point|等等" 显示焦点数据

看了官网,很多弯弯绕,暂时搞不懂先放一放,有缘人看到了直接去官网,别怪我!布局(layout) · GitBook

  五、谷歌图表

(一)使用

  • 首先还是要引入js文件,如下
<script src="https://www.gstatic.com/charts/loader.js"></script>
  • 然后声明div容器:
  <div id="googleTest"></div>
  •  多了一步,就是要加载google graph的api
//加载 Visualization API 和 corechart 包
   google.charts.load("current",{packages:"corechart"});
   //设置一个回调函数,在 API 加载完成后进行调用
   google.charts.setOnloadCallback(drawChart);
  • 然后就是下面的三个步骤:
//设置数据
   var data = google.visualization.arrayToDataTable([
    ["grade","iterms"],
    [3.43,"第一学期"],[3.6,"第二学期"],[3.66,"第三学期"],
    [2.99,"第四学期"],[2.5,"第五学期"],[2.7,"第六学期"],
    [3.0,"第七学期"],[2.0,"第八学期"]
   ]);
   //设置选项
   var options ={
    title: "成绩变化图",//表的标题
    hAxis: {title:"学期"},//表的水平轴的标题
    vAxis: {title:"成绩"},//表的垂直轴的标题
    legend: "none"
   }
   //绘制图表
   var container = document.getElementById("googleTest");
   //创建新的谷歌表格对象
   var bobo = new google.visualization.LineChart(container);
   //执行绘制方法
   bobo.draw(data,options);

但最后浏览器报错:

 表格到此为止吧。

  • 22
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Plotly.js 是一款基于 JavaScript 的开源数据可视化,可以用于实现各种图表和数据可视化效果。下面是使用 Plotly.js 的一些基本步骤: 1. 引入 Plotly.js 可以通过 CDN 或者本地下载的方式引入 Plotly.js ,例如: ```html <head> <script src="https://cdn.plot.ly/plotly-latest.min.js"></script> </head> ``` 2. 准备数据 使用 Plotly.js 绘制图表需要准备数据,可以是 JavaScript 数组、JSON 格式或者 CSV 文件等格式。 ```js var data = [ { x: ['giraffes', 'orangutans', 'monkeys'], y: [20, 14, 23], type: 'bar' } ]; ``` 3. 绘制图表 使用 Plotly.js 绘制图表需要调用 `Plotly.newPlot` 方法,并传入绘制图表的容器元素和数据对象。 ```js var data = [ { x: ['giraffes', 'orangutans', 'monkeys'], y: [20, 14, 23], type: 'bar' } ]; Plotly.newPlot('myDiv', data); ``` 其中,`myDiv` 是用于显示图表的容器元素的 ID。 4. 自定义图表 可以通过传入更多的参数来自定义图表的样式和配置,例如: ```js var data = [ { x: ['giraffes', 'orangutans', 'monkeys'], y: [20, 14, 23], type: 'bar', marker: { color: 'rgb(142,124,195)' } } ]; var layout = { title: 'A Bar Chart', xaxis: { title: 'Category' }, yaxis: { title: 'Value' } }; Plotly.newPlot('myDiv', data, layout); ``` 其中,`marker` 参数用于设置柱状图的颜色,`layout` 参数用于设置整个图表的样式和配置。 以上是使用 Plotly.js 的基本步骤和示例代码,更多 Plotly.js 的使用方法和示例可以参考官方文档:https://plotly.com/javascript/ 。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值