【问题标题】:Need help in pie-chart in jquery?在 jquery 的饼图中需要帮助吗?
【发布时间】:2016-04-28 06:02:42
【问题描述】:

我是 jquery 和 javascript 的新手。我正在制作一个饼图,我想突出显示饼图的各个部分。我已经成功地制作了一个饼图,但我的问题是我突出显示。

当鼠标悬停在每块饼上时,我必须突出显示它。现在,当我在谷歌上搜索它时,有各种可用的插件,但有没有办法不用它。我尝试创建一个 jquery 函数,然后当鼠标悬停时它应该改变突出显示,但我不能这样做。

这是我的代码---

<html> 
<body> 
<canvas width="500" height="500" id="canvas"></canvas> 
<script> 
//initialize data set 
var data = [ 100, 68, 20, 30, 100 ];  
var canvas = document.getElementById('canvas'); 
var c = canvas.getContext('2d'); 
//draw background 
c.fillStyle = "white"; 
c.fillRect(0,0,500,500);  


//a list of colors 
var colors = [ "orange", "green", "blue", "yellow", "teal"];  
//calculate total of all data 
var total = 0; 
for(var i=0; i<data.length; i++) 
{     
total += data[i]; 
} 

//draw pie data 
var prevAngle = 0; 
for(var i=0; i<data.length; i++) 
{     //fraction that this pieslice represents     
var fraction = data[i]/total;     
//calc starting angle     
var angle = prevAngle + fraction*Math.PI*2;          
//draw the pie slice     
c.fillStyle = colors[i];          
//create a path     
c.beginPath();     
c.moveTo(250,250);     
c.arc(250,250, 100,prevAngle, angle, false);     
c.lineTo(250,250);          
//fill it     
c.fill();          
//stroke it     
c.strokeStyle = "black";     
c.stroke();          
//update for next time through the loop     
prevAngle = angle; } 



</script> 
</body> 
</html> 

饼图应突出显示如下:

请帮我解决这个问题。我知道这很简单,但我无法弄清楚。任何帮助表示赞赏。如果您有任何问题,请发表评论?

【问题讨论】:

  • 您希望在将鼠标悬停在其上时显示饼图份额的值?
  • 我已经编辑了这个问题。添加了一张我想要这样的图片。
  • 你需要为你需要的系列设置“sliced: true, selected: true”查看这个链接jsfiddle.net/gh/get/jquery/1.7.2/highslide-software/…
  • @Raki 在这里他们已经 sliced:true 让它看起来与其他人不同,但我希望当光标在那里时它应该被突出显示。但我不希望当光标在那里时我想要它应该突出显示。
  • 在悬停时使用 setTranslation 函数检查这个更新的小提琴jsfiddle.net/63eh9aty/1

标签: javascript jquery charts


【解决方案1】:

@Shubham Vashishtha:检查这个小提琴。 http://jsfiddle.net/63eh9aty/2/ 在这里,我创建了一个 Json 变量 options ,它需要设置 highcharts,然后下一步是将数据添加到系列中。这是通过创建一个名为 "seriesOptionsJson 变量来实现的,该变量包含 name, data: [ ] (这是数组)。为了将实际数据插入 data:[ ] 我创建了 dataOptions 变量。 接下来将数据分配给 dataOptions 并将每个 dataOptions 添加到 seriesOptions 最后将 seriesOptions 数据添加到 highchart 的实际 series 中。即 options.series.push(seriesOptions) 如小提琴所示。

【讨论】:

  • 非常好...非常感谢您的努力...您能告诉我如何知道哪个关键字用于哪个属性。如果想要任何其他功能,我在哪里可以检查?
  • 你可以参考这个api.highcharts.com/highcharts,如果我的回答有帮助请投票。
  • 是的,这非常有帮助...再次感谢您...还有一件事请告诉我如何删除用于打印图表图标等的右上角图标...我访问了 [api.highcharts.com/highcharts] 页面但找不到它
  • 好吧,它被称为导出选项。可以通过添加 exporting: { enabled: false } 来启用或禁用更多详细信息,请参阅api.highcharts.com/highcharts#exporting
  • @ShubhamVashishtha 我希望你的问题得到解决.... 很高兴为你解决了一些问题:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-04
  • 1970-01-01
  • 2011-10-12
相关资源
最近更新 更多