Javascript 如何设置g.raphaeljs piechart方向或起点?

Javascript 如何设置g.raphaeljs piechart方向或起点?,javascript,svg,raphael,graphael,Javascript,Svg,Raphael,Graphael,默认情况下,g.raphaeljs piecharts显示从图表顶部向两个方向均匀延伸的最大值,较小的值顺时针显示 在下图中,最大值(1)大约在7点钟开始。我想显示12点开始的最大值,如何实现 好的,找到了(并且它100%工作”)。。。在这里: 不要忘记使用新参数startFromFixedAngle 这是代码 将以下内容应用于您的g.pie.js 替换 angle = 0, 与 除去 var mangle = angle - 360 * values[i] / total / 2;

默认情况下,g.raphaeljs piecharts显示从图表顶部向两个方向均匀延伸的最大值,较小的值顺时针显示

在下图中,最大值(1)大约在7点钟开始。我想显示12点开始的最大值,如何实现

好的,找到了(并且它100%工作”)。。。在这里:

不要忘记使用新参数
startFromFixedAngle

这是代码

将以下内容应用于您的
g.pie.js

替换

 angle = 0,

除去

 var mangle = angle - 360 * values[i] / total / 2;
 if (!i) {
     angle = 90 - mangle;


上面的解决方案过于复杂,会破坏任何依赖于mangle的动画效果(例如,在这里找到的:)。如果您想要的只是一个固定的起始角度,那么一行更改就足够了,但是如果您想要使用如上所述的参数,则可以替换

     if (!i) {
       angle = 90 - mangle;
       mangle = angle - 360 * values[i] / total / 2;
     }


在我的例子中,我只是希望所有饼图都从90度开始,所以我只需从第一个块的代码中删除“-mangle”。

尝试使用*g.pie.js*,就在那行之后
var mangle=angle-360*value[I]/total/2,例如
mangle=mangle+70当然,你需要一些更聪明的计算……谢谢@Daniel,这就行了。现在,我希望计算出使其可靠工作所需的计算。仅供参考,您的链接小提琴现在因Chrome 26.0.1410.65+1下的语法错误而失败,用于一个工作修复,-90度作为起始角度可以制作出美妙的吃豆人风格的饼图。由于raw.github不再工作,演示程序无法工作。如果您(出于某种原因)希望以0度开始饼图,则对于一次有效访问,此操作将失败。我最终采用了这个解决方案,但添加了一个非null opts.startFromFixedAngle的检查。
 var mangle;
 if (opts.startFromFixedAngle)
     mangle = angle + 360 * values[i] / total / 2;
 else {
     mangle = angle - 360 * values[i] / total / 2;
     if (!i) {
         angle = 90 - mangle;
         mangle = angle - 360 * values[i] / total / 2;
     }
     if (!i) {
       angle = 90 - mangle;
       mangle = angle - 360 * values[i] / total / 2;
     }
     if (!i) {
       if (opts.startFromFixedAngle) {
         angle = opts.startFromFixedAngle;
       } else {
         angle = 90 - mangle;
       }
       mangle = angle - 360 * values[i] / total / 2;
     }