Plotly 函数图像绘制

常见的图形库系列

常见的图形库概览-00-overview

常见的图形库概览-01-Chart.js 入门例子

常见的图形库概览-03-D3.js 入门例子

HighCharts 交互式图表-01-入门介绍

Plotly 函数图像绘制

ApexCharts 图表入门例子

Victory 图表基于 React,适合 React 项目,支持移动端

Recharts 入门例子

AntV G2 入门例子

图表库 C3.js 入门例子

图表库 Google Charts 入门例子

ECharts-01-图表库系列

Plotly

缘起

这两天想在前端展现数学函数图像,猜测应该有成熟的 js 库。

于是,简单的进行了尝试。

最后决定使用 plotly.js,其他的比如 function-plot 看起来也不错,以后有时间再看。

Plotly

plotly.js is the open source JavaScript graphing library that powers Plotly.

Plotly 可以称之为迄今最优秀的绘图库,没有之一。

简单案例

代码

html 复制代码
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>plot 绘制图像</title>
</head>

<body>
<div id="tester" style="width:600px;height:250px;"></div>
</body>

<script src="https://cdn.plot.ly/plotly-1.2.0.min.js"></script>


<!-- test -->
<script>
    TESTER = document.getElementById('tester');
    Plotly.plot(TESTER, [{
        x: [1, 2, 3, 4, 5],
        y: [1, 2, 4, 8, 16]
    }], {
        margin: {t: 0}
    });
</script>

</html>

效果

<script src="https://cdn.plot.ly/plotly-1.2.0.min.js"></script> <script> TESTER = document.getElementById('tester'); Plotly.plot(TESTER, { x: \[1, 2, 3, 4, 5, y: 1, 2, 4, 8, 16 }], { margin: {t: 0} }); </script>

绘制数学图像

数学图像绘图的原理。比如说 y = 2*x+1,实际上就是一系列 (x,y) 的点连接而成的图像。

代码

html 复制代码
<div id="math-function" style="width:600px;height:250px;"></div>
<script src="https://cdn.plot.ly/plotly-1.2.0.min.js"></script>

<script>
    TESTER = document.getElementById('math-function');

    var x = [], y = [];

    for(var i = -10; i < 10; i += 1) {
        x.push(i);
        y.push(2*i+1);
    }

    Plotly.plot(TESTER, [{
        x: x,
        y: y
    }], {
        margin: {t: 0}
    });
</script>

效果

<script> TESTER = document.getElementById('math-function'); var x = \[\], y = \[\]; for(var i = -10; i < 10; i += 1) { x.push(i); y.push(2*i+1); } Plotly.plot(TESTER, { x: x, y: y }, { margin: {t: 0} }); </script>

相关推荐
一枕槐安48717 分钟前
大模型应用后端设计:上下文管理、缓存、降级策略的工程方案总结
java·spring·缓存
T_Apollo18 分钟前
2.9 Java 25 版本新增特性和类
java
步行cgn33 分钟前
@RequestMapping 注解详解
java·后端·spring
鶴哥只手遮天33 分钟前
Spring Boot 4.1.1 深度源码解析-第 15 章 · 条件注解体系:全部 `@ConditionalOnXxx` 的实现原理
java·后端·开源
鶴哥只手遮天34 分钟前
Spring Boot 4.1.1 深度源码解析-第 30 章 · 基础设施能力:SSL Bundle、Task 与虚拟线程、Retry
java·后端·开源
IT研究室36 分钟前
最新计算机毕业设计选题推荐-基于微信小程序的汉服交易系统-网站-文档指导-Java-springboot
java·微信小程序·课程设计
鶴哥只手遮天39 分钟前
Spring Boot 4.1.1 深度源码解析-第 26 章 · 指标、观测与链路追踪:Micrometer 与 OpenTelemetry
java·后端·开源
Wang's Blog42 分钟前
Java 项目实战: 交友项目 - 章节复盘:微服务骨架与手机号验证码登录
java·微服务·交友
data analyse 4561 小时前
Session数怎么计算?明确会话切分、超时与跨页规则
java·服务器·数据库
鶴哥只手遮天1 小时前
Spring Boot 4.1.1 深度源码解析-第 19 章 · Spring MVC 自动配置:DispatcherServlet、消息转换
java·后端·开源