javascript - 如何使用 JS 创建点图
问题描述
如何创建高密度点图?我已经修改了一些在矩形周围散布点的基本算法,如下所示:
var createOrangeDots = function () {
for (var i = 0; i <=orangeNum; i++) {
context.beginPath();
var rand_x = Math.random(i) * horz_max;
var rand_y = Math.random(i) * vertical_max;
context.arc(rand_x, rand_y, radius, 1, 2*Math.PI);
context.fillStyle ="orange";
context.fill();
context.closePath();
}
}
...创建... 我还帮助找到了在“目标”周围形成点的代码:
var createOrangeDotsCircle = function () {
for (var i = 0; i <= orangeCircleNum; i++) {
context.beginPath();
const dist = (Math.random() ** centripetal) * distFromCenter;
const angle = Math.random() * Math.PI * 2;
var rand_x = dist * Math.cos(angle) + centerOrange.x;
var rand_y = dist * Math.sin(angle) + centerOrange.y;
context.arc(rand_x, rand_y, radius, 1, 2 * Math.PI);
context.fillStyle ="orange";
context.fill();
context.closePath();
}
}
createOrangeDotsCircle();
...产生...
但是我想知道是否有任何 JS 代码可以创建具有不同密度的随机点形状,以至于它实际上可能类似于一个真正的城市隔离图?像这样的东西:
...但仅使用两种颜色且没有地图背景(即仅点)。
我知道这很复杂,所以只需从更有经验的编码人员那里寻找想法/技巧/方向。提前感谢您的帮助。
解决方案
推荐阅读
- java - 实现双向连接的组合框
- java - 无法解析到窗口生成器中的设计视图
- ios - 在 Ios 中反应原生 Google 登录问题
- api - Prtg api过滤具有特定标签的所有设备
- android - 使用 Gson 和数据中的 JSONObject 从服务器解析数据
- uwp - 有什么方法可以判断应用程序是侧载的还是从商店下载的?
- postman - 在 Postman Native App Pre-Request 脚本中访问 Cookie
- matlab - 检索由 probplot 生成的参考线的梯度
- office-js - 传递一个数组来格式化字体颜色/粗细...
- python - 如何以字符串的形式从给定日期中提取月份和年份