javascript - Dimple js修改散点形状

标签 javascript d3.js dimple.js

有没有一种简单的方法可以使用 dimple.js 修改散点图中圆圈的形状?

我想要这个 scatter plot 中每种颜色的不同形状.例如,蓝色的矩形,红色的三 Angular 形,黄色的括号......

我该怎么做?

enter image description here

最佳答案

您可以通过编写自定义绘图函数来实现。

如果您不关心某些功能(例如工具提示、动画、重复绘制等),您可以将它们删除,并将代码减少到非常少的程度。这是绘制星星的最基本的绘图仪。

var myCustomPlotter = {
  stacked: false,
  grouped: false,
  supportedAxes: ["x", "y"],
  draw: function (chart, series, duration) {
    chart._group
      .selectAll(".my-series")
      .data(series._positionData)
      .enter()
      .append("path")
    // Path Generated at http://www.smiffysplace.com/stars.html
      .attr("d", "M 0 10 L 11.756 16.180 L 9.511 3.090 L 19.021 -6.180 L 5.878 -8.090 L 0 -20 L -5.878 -8.090 L -19.021 -6.180 L -9.511 3.090 L -11.756 16.180 L 0 10")
      .attr("transform", function (d) { 
      return "translate(" +
        dimple._helpers.cx(d, chart, series) + "," + 
        dimple._helpers.cy(d, chart, series) + ")"; 
    }) 
      .style("fill", "yellow")
      .style("stroke", "orange");
  }
};

http://jsbin.com/mafegu/6/edit?js,output

一旦开始添加工具提示等,它会变得更加复杂,但您可以使用原始气泡方法作为基础并从那里开始工作:

https://github.com/PMSI-AlignAlytics/dimple/blob/master/src/objects/plot/bubble.js

关于javascript - Dimple js修改散点形状,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38905001/

相关文章:

javascript - 当只有几个值时,Dimple Js 会重复刻度

javascript - 如何在使用 dimple.js 制作的图表的标签中添加空格?

dimple.js - 选择新选项时更新dimple.js图表

javascript - 文本框的边框被另一个类覆盖

javascript - 在 jQuery DataTables 中使用 "later"变量

html - 快速响应的交互式图表/图形 : SVG, Canvas,其他?

charts - dimple.js 图表中图表和轴的标题

javascript - Backbone : Access Collection Models

javascript - 错误 : Registration token(s) provided to sendToDevice() must be a non-empty string or a non-empty array

javascript - SVG 标记上的 D3 过渡