用渐变色绘制一个 D3 圆

2024-04-25

如何用渐变颜色画一个圆?比如说,从黄色到蓝色的渐变。

通常,要创建黄色圆圈,我们可以使用以下代码:

var cdata=[50,40];
var xscale=40;
var xspace =50;
var yscale=70;

var svg = d3.select("body")
    .append("svg")
    .attr("width", 1600)
    .attr("height", 1600);

var circle = svg.selectAll("circle")
    .data(cdata)
   .enter()
    .append("circle");

var circleattr = circle
    .attr("cx", function(d) {
        xscale = xscale+xspace;
        return xscale;
    })
    .attr("cy", function(d) {
        yscale=yscale+xspace+10;
        return yscale;
    })
    .attr("r", function(d) {
        return d;
    })
    .style("fill","yellow");

您必须首先在 SVG 中定义渐变,然后使用指向渐变元素的 SVG 链接填充圆圈。

// Define the gradient
var gradient = svg.append("svg:defs")
    .append("svg:linearGradient")
    .attr("id", "gradient")
    .attr("x1", "0%")
    .attr("y1", "0%")
    .attr("x2", "100%")
    .attr("y2", "100%")
    .attr("spreadMethod", "pad");

// Define the gradient colors
gradient.append("svg:stop")
    .attr("offset", "0%")
    .attr("stop-color", "#a00000")
    .attr("stop-opacity", 1);

gradient.append("svg:stop")
    .attr("offset", "100%")
    .attr("stop-color", "#aaaa00")
    .attr("stop-opacity", 1);

// Fill the circle with the gradient
var circle = svg.append('circle')
    .attr('cx', width / 2)
    .attr('cy', height / 2)
    .attr('r', height / 3)
    .attr('fill', 'url(#gradient)');

A jsFiddle http://jsfiddle.net/pnavarrc/B33uh/与完整的例子。有关如何定义 SVG 渐变的更多详细信息,请参阅MDN 教程 https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Gradients。结果图像:

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

用渐变色绘制一个 D3 圆 的相关文章

  • 如何使用数据对象中的值指定 d3.js 选择器?

    我在 Web 应用程序中使用 d3 js 描述我想要做的事情的最简单方法是查看下面链接的 Fiddle 但基本设置是我有一个包含数据对象的数组 my data id B text I want this text in B id C tex
  • 变量前面加号的作用是什么?

    什么是 d in function addMonths d n keepTime if d mean The 运算符返回对象的数字表示形式 因此 在您的特定情况下 它似乎是根据是否d是一个非零数 参考here http en wikiboo
  • 如何将javascript变量放入php echo [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我想将 JavaScript 变量添
  • Node.js 主机名/IP 与证书的替代名称不匹配

    我正在编写一些节点代码来进行 Facebook 的服务器端登录 我已经非常接近让它完全发挥作用了 但是我在请求 auth code 时遇到了麻烦 我认为这可能与 Facebook 应用程序设置有关Site URL但我尝试过的都没有成功 我使
  • Google Analytics 是否具有针对长时间运行的网络应用程序的“心跳”功能?

    我正在制作一个专注于观看嵌入内容的网络应用程序 我希望应用程序客户端向 GA Google Analytics 发送 心跳 类型的信号以保持会话继续进行 现在看来 如果访问者观看视频 5 10 分钟 GA 就会假设他已经离开页面 并将用户的
  • AngularJS:如何在 AngularJS 中使用或注入第三方库

    我是 Angular 和 Deployd 的新手 想知道如何一起使用它们 我发现 Deployd 网站中的示例很好 但它只消耗其余 API 数据 我想了解如何将 Deployd 作为 AngularJS 中的服务 例如 通过部署中可用的收集
  • 在没有事件的情况下从 HTML 执行 javascript 函数

    我希望从 HTML 页面调用 javascript 函数 并且我do not希望它依赖于任何事件 该函数位于单独的 js 文件中 因为我希望在许多网页中使用它 我也将变量传递给它 我试过这个 HTML fp footer2 js中的函数 f
  • 如何使用 Material UI 制作一个圆形复选框?

    我尝试匹配的设计要求复选框为圆形 我正在使用 Material UI 和 React 边框半径不起作用 因为实际图标的边框不是可见复选框的边框 我不能只使用像 Font Awesome 这样的东西 因为它需要实际检查和取消检查 Curren
  • 属性列表后缺少 jquery 验证 }

    我这里有这个代码 order validate rules name required true lastname required true address required true telephone required true di
  • 客户端上传并读取文件,角度为2

    我需要用户的日志文件 以便我可以读取和分析这些文件 例如某种放置区域 用户放置一个文件 然后我可以用javascript读取它 我使用 Angular2 rc5 我有 node js 在后台运行 但我不需要那里的数据 我只需要在客户端 是否
  • 在 JavaScript onClick 事件处理程序中转义双引号

    下面的简单代码块可以在静态 HTML 页面中提供 但会导致 JavaScript 错误 您应该如何转义中嵌入的双引号onClick处理程序 即 xyz 请注意 HTML 是通过从数据库中提取数据动态生成的 其中的数据是其他可能带有单引号或双
  • 在 JavaScript 中将整数数组转换为字符串数组

    我有一个如下所示的数组 var sphValues 1 2 3 4 5 然后我需要转换上面的数组 如下所示 var sphValues 1 2 3 4 5 我怎样才能转换 我用它来自动完成 您可以使用map https developer
  • 在javascript中调用c#函数[重复]

    这个问题在这里已经有答案了 可能的重复 从 Javascript 调用 ASP NET 函数 https stackoverflow com questions 3713 call asp net function from javascr
  • jQuery Deferred - 向 Deferred 合约添加回调

    我正在尝试在现有 Deferred 的状态设置为成功之前向其合约添加另一个异步调用 不要尝试用英语解释这一点 请参阅以下伪代码 when ajax url someUrl data data async true success funct
  • 同步 jQuery 动画

    我正在尝试同时获得淡入 不透明度切换 和边框淡入 使用jquery 动画颜色 http www bitstorm org jquery color animation 同时开火 但我遇到了一些麻烦 有人可以帮忙查看以下代码吗 fn exte
  • JavaScript 类继承

    谁能告诉我为什么我的 showDiv boo 在类的方法中未定义 我也无法访问我的类的方法 这是我的 Blink 类及其属性和方法 function Blink div this div div Blink prototype counte
  • 使用 JavaScript 在空闲时隐藏鼠标光标

    是否可以使用JavaScript来设置cursor属性的属性none如果鼠标在一定时间内处于非活动状态 例如五秒 请将其设置回auto当它再次活跃时 EDIT 我意识到none不是有效值cursor财产 尽管如此 许多网络浏览器似乎都支持它
  • 关闭网站的 IE 8 兼容模式

    我的公司使用IE8作为默认浏览器 并且默认为所有内联网站点设置兼容模式 我正在构建一个在关闭兼容模式时可以工作的 Intranet 站点 我正在使用 Reset css 和几个开源 JavaScript 程序 例如数据表 我想做的是强制关闭
  • 类型错误: jasmine.getEnv().currentSpec 为 null

    当我尝试运行我的茉莉花规格时 我得到 TypeError jasmine getEnv currentSpec is null in http localhost 8888 JASMINE ROOT jasmine js line 498
  • 如何找到我的 typescript/react 模块的声明?

    我对前端技术非常 非常 陌生 特别是 React 和 TypeScript 当尝试做一件简单的事情 即使用反应组件时 我的问题出现了https github com ckeditor ckeditor5 https github com c

随机推荐

  • CKEditor 5 保存选定的文本并在恢复内容后将其再次设置为选定

    我一直在使用 CKEditor 5 var mySelection editor getSelection 例如 获取选定的文本并能够将其保存到数据库中 我想知道是否有一种更简单的方法将所选文本保存到数据库 然后在恢复文本后将其设置为在编辑
  • 请参阅在 JSDoc 中键入不同的文件而不导入

    我正在 Visual Studio Code 中编写 JavaScript ES6 代码 并启用 VSCode 的类型检查 如VSCode 文档 https code visualstudio com docs languages java
  • displayformatattribute 自定义字符串格式

    我希望能够将视图模型中的属性标记为在 MVC 视图中显示时使用自定义格式进行格式化 我假设我需要自己的显示格式属性并设置显示格式 但我不确定如何设置此显示格式或在哪里设置 如果我想将数字显示为货币 很简单 只需在属性的构造函数中将 Data
  • 无法为 api 路由 laravel 设置 cookie

    使用后端 laravel 和前端 SPA vue js vue cli 3 进行服务 我需要通过 httpOnly cookie 不是 localStorage 进行身份验证 我用tymondesigns jwt auth https gi
  • 如何在主题激活时填充侧边栏上的小部件

    我想做的是在主题激活时使用一些默认小部件预先填充侧边栏小部件区域 if dynamic sidebar sidebar 确实添加了小部件 但它没有显示在小部件部分的侧栏中 并且 if is active sidebar sidebar 如果
  • Symfony2 中的 getEntityManager() 和 getDoctrine()

    这两种说法有什么区别吗 this gt getDoctrine gt getEntityManager gt getRepository this gt getDoctrine gt getRepository 这种差异是否与我遗漏的任何
  • 如何比较 Visual Studio Code 中的不同分支

    如何比较 Visual Studio Code 中的两个不同分支 是否可以 2021年答案 这是分步指南 安装GitLens扩大 GitLens https marketplace visualstudio com items itemNa
  • jScrollPane滚动条问题

    我正在开发一个使用 Wordpress 作为 CMS 的网站 并且我想在我的网站的 div 内使用自定义滚动条 我一直在尝试使用 jScrollPane 插件 但无法使其正常工作 主要代码在我的 header php 文件中 并且有一个类
  • 编辑文档Python-docx标题中的内容

    我正在尝试查找并替换其中的文本标题中的文本框的文档 但搜索了一段时间后 似乎无法通过 python docx 访问标题或 浮动 文本框中的内容 我读了问题here https github com python openxml python
  • 我应该在我的活动中缓存来自 SharedPreferences 的数据吗?

    我正在开发一个基于 GCM 的应用程序 用户可以在其中订阅多个主题 我需要知道用户在两个地方订阅了哪些主题 主要活动 展示Subscribe or Unsubscribe用户界面中的按钮 GCM 侦听器服务 通过以下方式过滤消息并处理 过时
  • 无法在 _app.js 中使用 getStaticProps

    我正在使用 next js 并尝试执行以下操作 获取 app js中与用户数据相关的基本数据 该数据包括标题 用于导航栏 和一些社交链接 用于页脚 在构建时将该数据传递给其他组件 例如页脚和导航栏 用于静态站点生成 为此我已经导出了getS
  • 使用监视器的单车道桥

    在大学里 我从 Gregory R Andrews Foundations of Multithreaded programming 中得到了这个规范的并行编程问题 虽然我有这本书的较新版本和俄语版本 但我发现了一个旧的英语变体并尝试正确传
  • 没有 fflush(stdout) 则输出不打印

    我不明白为什么有时我需要使用fflush 有时不是 我的程序目前出现段错误 我正在使用 print 语句对其进行调试 当程序出现段错误时 stdout不自动刷新缓冲区 我不明白为什么有时需要使用 fflush 而有时需要使用 不是 有时 s
  • 为什么我不能在类方法中使用预定义变量?

    我尝试在类方法中使用预定义变量 例如 PSVersionTable 或 PSScriptRoot 他们失败并显示错误消息 方法中未分配变量 Example Class Foo String Version GetVersion If PSV
  • Git:更改不应该保留在其分支内吗?

    我对使用 Git 还比较陌生 这是我到目前为止所做的 git branch master git status On branch master nothing to commit working directory clean git b
  • ffmpeg 使用 -movflags faststart

    我尝试使用命令 movflags 快速启动 并得到以下错误 Microsoft Windows 版本 6 0 6002 版权所有 c 2006 Microsoft 公司 版权所有 C uploads 1 videos gt ffmpeg i
  • MATLAB 颜色条刻度标记错误?

    我正在绘制 9 个子图 如下图所示 其中一个颜色条代表三个子图 在这里我想将颜色条中的最高值显示为 gt value 令人惊讶的是 当我手动将刻度标签编辑为h TickLabels end gt h TickLabels end 颜色条开始
  • 哪种架构称为非均匀内存访问(NUMA)?

    根据wiki http en wikipedia org wiki Non uniform memory access 非均匀内存访问 NUMA 是一种用于多处理的计算机内存设计 其中内存访问时间取决于相对于处理器的内存位置 但尚不清楚它是
  • 处理数据表中的会话超时(使用服务器端数据源处理)

    我有一个由服务器端 Ajax 数据源支持的数据表表单 它在后端使用 struts 操作来处理请求 获取数据并发送 JSON 响应 服务器端操作需要在身份验证模式下运行 即需要有一个活动会话 处理数据表中会话超时错误的最佳方法是什么 目前它只
  • 用渐变色绘制一个 D3 圆

    如何用渐变颜色画一个圆 比如说 从黄色到蓝色的渐变 通常 要创建黄色圆圈 我们可以使用以下代码 var cdata 50 40 var xscale 40 var xspace 50 var yscale 70 var svg d3 sel