将 Chart JS 2 上的条形图扩展为新型图表

2024-01-25

我实际上正在使用 Chart JS 2.0.1 在页面上绘制图表。

我的客户要求我在条形图中添加一条线,以便他们可以看到他们不能超过的限制。像那样:y 轴上有线条的条形图 https://i.stack.imgur.com/5XJO4.png

因此,我试图将条形图扩展为一个新的条形图,它采用一个名为值线它提供了线的 y 值。

我成功地扩展了条形图,但它覆盖了页面中显示的其他条形图,而我在其他条形图中不需要它。

这是我所做的:http://jsfiddle.net/d5ye1xpe/ http://jsfiddle.net/d5ye1xpe/

我希望能够拥有这样的东西:jsfiddle.net/L3uhpvd5/(抱歉我不能上传两个以上的链接)

Chart.barWithLine(ctx,config);

但是使用 Chart JS 2.0.1 版本

Thanks,

普图尔内姆


如果这有帮助,我将 @Ptournem 答案重写为具有某种配置的有效 2.3.0 插件

Chart.plugins.register({
    config: {
        /** @type {rbg|rgba|hex}  Stroke color */
        strokeColor: "rgb(255, 0, 0)",

        /** @type {int}  Column width */
        lineWidth: 1,
    },

    afterDatasetsDraw: function(chartInstance, easing) {
        var value = chartInstance.config.lineAtValue;

        if (typeof value === 'undefined') return;

        var ctx   = chartInstance.chart.ctx,
            xaxis = chartInstance.scales['x-axis-0'],
            yaxis = chartInstance.scales['y-axis-0'];

        ctx.save();
        ctx.beginPath();
        ctx.moveTo(xaxis.left, yaxis.getPixelForValue(value));
        ctx.lineWidth   = this.config.lineWidth;
        ctx.strokeStyle = this.config.strokeColor;
        ctx.lineTo(xaxis.right, yaxis.getPixelForValue(value));
        ctx.stroke();
        ctx.restore();
    },

    // IPlugin interface
    afterDatasetsUpdate: function(chartInstance) {},
    afterDraw: function(chartInstance, easing) {},
    afterEvent: function(chartInstance, event) {},
    afterInit: function(chartInstance) {},
    afterScaleUpdate: function(chartInstance) {},
    afterUpdate: function(chartInstance) {},
    beforeRender: function(chartInstance) {},
    beforeDatasetsDraw: function(chartInstance, easing) {},
    beforeDatasetsUpdate: function(chartInstance) {},
    beforeDraw: function(chartInstance, easing) {},
    beforeEvent: function(chartInstance, event) {},
    beforeInit: function(chartInstance) {},
    beforeUpdate: function(chartInstance) {},
    destroy: function(chartInstance) {},
    resize: function(chartInstance, newChartSize) {},
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 Chart JS 2 上的条形图扩展为新型图表 的相关文章

  • .push() 将多个对象放入 JavaScript 数组中返回“未定义”

    当我将项目添加到beats数组然后console log用户时 我得到了数组中正确的项目数 但是当我检查 length 时 我总是得到 1 尝试调用索引总是会给我 未定义 如下所示 Tom beats 1 我想我错过了一些明显的东西 但这让
  • 如何使用 Playwright 使用选择器查找框架 (iframe)

    我有一个小问题 无法找到使用 Microsoft Playwright 框架的答案 根据您可以使用以下代码获取 iframe const frame page frame frame login 但是如何使用选择器来查找 iframe 并与
  • 通过 JavaScript 获取表单名称

    我有一个简单的问题 但我在网上找不到好的解决方案 我有这个 HTML 代码
  • 想要动态处理与分页相关的页码显示:ReactJS

    我有一些分页逻辑工作得很好 唯一的问题是我只能让它显示并固定数量的页面可供选择 现在我已经把它放到了 5 页 但我希望它能够根据总记录动态更改 假设我有 100 条记录 每页限制为 10 条 将有 10 页 现在我只能让它以这种方式显示 第
  • JQuery UI Selectable 插件:当 div 溢出时使滚动条不可选择

    我有一个 div 设置为overflow auto 该 div 的内容是可选择的 使用 jQuery UI 当 div 溢出并出现滚动条时 滚动条本身变为可选择状态 因此滚动效果不佳 在 FF Chrome 中 我可以滚动 div 但我得到
  • 如何使用javascript确保元素仅在圆上朝一个方向移动?

    好吧 我承认我对三角学真的很糟糕 出于上下文的考虑 我将添加我在这里提到的问题中的内容 参考问题 https stackoverflow com a 39429290 168492 https stackoverflow com a 394
  • javascript 选择自定义光标 (svg)

    我正在动态地将光标更改为悬停时的本地 svg element on mouseover function this css cursor url svgs pointer svg 9 30 auto 工作正常 但我想选择该 svg 来操纵其
  • JavaScript 继承;调用和原型

    要在Javascript中实现继承 通常需要执行以下两个步骤 假设我有一个基类 Animal var Animal function name this name name 我现在想从中派生一个子类 Dog 所以我想说 var Dog fu
  • 如何使用角度材料在具有可扩展行的表格中创建嵌套垫表

    我有以下数据 id c9d5ab1a subdomain wing domain aircraft part id c9d5ab1a info mimetype application json info dependent parent
  • 使用 JavaScript 移动页面上的按钮

    我的按钮可以移动 但奇怪的是 我无法弄清楚偏移是否有问题 我希望我的按钮随着鼠标光标移动 但现在它的移动方式不是我想要的 有时它会消失 另外 创建的新按钮是重叠的 我不知道如何解决这个问题并拥有更好的外观 var coorA var coo
  • 表单发布请求并存储收到的数据

    我有一个非常简单的表单 在提交时发出发布请求
  • 使用 Javascript 设置 cookie [重复]

    这个问题在这里已经有答案了 我正在尝试构建我的第一个移动应用程序 它需要连接到我的 mysql 数据库并使用 json 返回数据 这很好 目前我有一个登录系统 一旦确定用户名和密码存在 它就会返回一条成功消息 对于下一步 我想在我的页面上使
  • 覆盖 jQuery 验证 MVC4 中的默认设置

    要覆盖查询验证插件 请在文件 http docs jquery com Plugins Validation validate toptions 推荐的方式是 selector validate invalidHandler functio
  • 如何使用 JavaScript 或 jQuery 克隆 HTML 元素的样式对象?

    我正在尝试克隆元素的样式对象 这应该允许我在更改后重置所述元素的样式 例如 el style left 50px curr style left 50px Modify the elements style The cloned style
  • Rails 3.1+ 的 Jasmine 与 Mocha JavaScript 测试 [已关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我对茉莉花有经验并且非常喜欢它 有谁有 Jasmine 和 Mocha 的经验 特别是 Rails 的经验吗 我想知道是否值得转用 我已经在 J
  • Highcharts jQuery 渲染问题 - 所有浏览器

    我在尝试使用构建堆积柱形图时遇到了一个奇怪的问题高图表 http www highcharts com 当图表呈现时 在您调整浏览器大小之前 不会显示列无论如何 导致图表重绘 我认为 图表的其余部分显示 轴 标题等 但不显示列本身 我在 I
  • 有没有办法使用 ko.observableArray 作为地图?

    有没有办法使用ko observableArray http knockoutjs com documentation observableArrays html像地图 字典一样 例如 var arr ko observableArray
  • 如何从 json 文件创建模型? (ExtJS)

    这是我想使用 json 文件创建的模型 Ext define Users extend Ext data Model fields name user id type int name user name type string 为了根据服
  • 将数组从 jquery ajax 传递到代码后面

    我必须将二维数组传递给在asp net网页代码后面编写的页面方法我有一个变量objList作为二维数组 我使用以下代码来实现此目的 但没有成功 并且未调用页面方法 脚本语言 function BindTable objList ajax u
  • 测量窗口偏移

    有没有一种方法可以测量 jQuery 中窗口的偏移量 以便我可以比较 固定 元素和相对定位元素的位置 我需要能够知道窗口滚动了多远 以便我可以使用该图来计算固定元素的高度 相对于视口顶部 和相对对象的高度 相对于顶部 之间的差异文件的内容

随机推荐

  • NSParagraphStyle defaultParagraphStyle 没有效果

    尝试设置 NSTextView 的段落样式 我在这里做错了什么 或者可能把代码放在错误的地方 我的 NSTextView 的子类中有这段代码 这不会以任何方式影响我的文本视图 class EditorTextView NSTextView
  • 使用 JGit 确定前后提交的数量

    在 GitHub 项目中 当我们转到任何分支页面时 我们可以看到描述分支的提前 延迟提交编号的图表 掌握 我们如何使用 JGit 确定数字前面的数字 I used BranchTrackingStatus为此类 但我得到BranchTrac
  • 将一个符号向后排列,Haskell [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 我如何将一个符号重新排列回来 我有一个给定的字符串 abcdpqrs 其中输出为 badcqpsr 我当前的代码 f s foldr a x
  • 100% 内存 HSQL 数据库

    我有一个 Java 应用程序设置为服务 每隔几个小时对大约 3GB 的数据进行数据挖掘 我希望这 100 发生在记忆中 理想情况下 我希望应用程序与所有事物隔离 我希望它构建数据库 进行我需要的挖掘 并在完成后拆除数据库 然而 对于 HSQ
  • 如何在单引号中使用 bash 变量

    我的 bash 代码如下 payload text failure with VAR failed for 但变量未解析为实际值 请不要给出否定 因为我在 Bash 方面没有太多经验 变量不会在单引号中扩展 这意味着您只需确保它们不是单引号
  • MKMapView 完全缩小时的缩放问题

    我通过单击按钮缩小地图 因此 当地图完全缩小时 如果我尝试再次缩小它 那么它在设置区域时会崩溃 不确定 但是有什么方法可以检测地图是否达到最大缩放限制吗 这是我缩小地图的代码 void setZoomLevelForNoPicksCurre
  • AJAX、PHP 会话和同时请求[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我就直接进入正题吧 当用户提交搜索时
  • 我在 env 渲染中遇到错误 - env.render()

    我试图在渲染时实现 Atari Games 但出现如下错误 line 283 in render raise error Error gym error Error render mode human is deprecated Pleas
  • 网络表单中的构造函数?

    我有一个 ASP NET Web 表单 我在其中初始化一个数组 其中包含页面上的控件列表 如下所示 FileUpload 4 new FileUpload 4 public myclass fileUpload 0 FileUpload1
  • PyCharm 中“没有名为管理的模块”

    我在使用 PyCharm 时遇到问题 当我单击 工具 中的 运行 Django 控制台 或 运行管理 py 任务 时 我得到 Traceback most recent call last File
  • 为iPhone 5创建opencv相机矩阵solvepnp

    我正在使用 opencv 为 iPhone 开发一个应用程序 我必须使用方法solvePnPRansac http opencv willowgarage com documentation cpp camera calibration a
  • 即使使用动态高度网站,如何将页脚保持在底部

    当我有一个使用 CSS 动态设置高度 例如从数据库获取信息 的页面时 如何将页脚 div 始终保持在窗口底部 如果你想使用 jQuery 我想出了这个并且工作得很好 设置页脚的 CSS footer position absolute wi
  • 将 props 传递到 React 组件

    我刚刚开始学习 React 正在创建组件并将 props 传递给它们 我是否必须在下面的示例中引用 JSX 元素中的 props 我已经看到过引用 props 和未引用 props 的示例 并且这两个选项似乎都有效 const name J
  • 如何获得可靠的 Cortex M4 短延迟

    我正在将一些代码从 M3 移植到 M4 它使用 3 个 NOP 在串行输出时钟更改之间提供非常短的延迟 M3指令集将NOP的时间定义为1个周期 我注意到 M4 中的 NOP 并不一定会延迟任何时间 我知道我需要禁用编译器优化 但我正在寻找一
  • 如何使用 Handlebars.js 将字段小写?

    我想做这样的事情 user name toLowerCase 但我收到此错误 Error Parse error on line X tatus user name toLowerCase gt Expecting ID got undef
  • 如何使输入可观察?

    我有一个带有一些输入的组件 我希望在它发生更改时收到通知 我目前通过实施来使其工作ngOnChanges并找出哪个输入被更改 但是 我更愿意将输入声明设置为 Input select values selectValues Observab
  • For 循环范围必须有一个“iterator()”方法

    我遇到了这个奇怪的错误 val limit Int applicationContext resources getInteger R integer popupPlayerAnimationTime for i in limit 我找到了
  • 如何以编程方式添加多列 ListViewItem 而无需任何数据绑定?

    我有一个带有 3 个标头的 ListView 在 XAML 中声明如下
  • Mono 运行时的局限性

    我的问题类似于this one https stackoverflow com questions 802559 limitations in mono for a net framework developer and this one
  • 将 Chart JS 2 上的条形图扩展为新型图表

    我实际上正在使用 Chart JS 2 0 1 在页面上绘制图表 我的客户要求我在条形图中添加一条线 以便他们可以看到他们不能超过的限制 像那样 y 轴上有线条的条形图 https i stack imgur com 5XJO4 png 因