如何在Dojo中更改图表系列线条颜色?

时间:2013-09-22 08:18:23

标签: dojo linechart

我现在使用Dojo来显示折线图。但我不知道如何改变系列线的颜色,有人会帮忙吗? THX。

  var chart1 = new dc.Chart("test1");
  chart1.addPlot("default", { type: "Default", lines: true, markers: true, tension: 1 });
  chart1.addAxis("x", { majorTick: { stroke: "black", length: 5 }, minorTick: { stroke: "black", length: 1} });
  chart1.addAxis("y", { vertical: true, majorTick: { stroke: "black", length: 5 }, minorTick: { stroke: "black", length: 1} });
  chart1.addSeries("Series A", [{ x: 0.5, y: 5 }, { x: 1.5, y: 1.5 }, { x: 2, y: 9 }, { x: 5, y: 0.3}]);
  chart1.addSeries("Series B", [{ x: 0.3, y: 8 }, { x: 4, y: 6, tooltip: "Custom tooltip" }, { x: 5.5, y: 2}]);
  chart1.addSeries("Series C", [{ x: 0.8, y: 6 }, { x: 8, y: 1, tooltip: "Custom tooltip" }, { x: 7, y: 2}]);
  chart1.addSeries("Series D", [{ x: 0.1,y: 5}, { x: 2, y: 3, tooltip: "Custom tooltip" }, { x: 4, y: 5}]);

  var anim1a = new dc.action2d.Magnify(chart1, "default");
  var anim1b = new dc.action2d.Tooltip(chart1, "default");
  chart1.render();

对于A系列,B系列,C系列,D系列,我想用我定义的颜色来展示它们,任何人都可以提供帮助吗?

2 个答案:

答案 0 :(得分:1)

您也可以提供系列中的颜色,供剧情使用。如下所示:

chart1.addSeries("Series A",
        [{ x: 0.5, y: 5 }, { x: 1.5, y: 1.5 }, { x: 2, y: 9 }, { x: 5, y: 0.3}], 
        { stroke: "green" });

答案 1 :(得分:0)

您可以在定义图表时使用setTheme()函数更改颜色。

必须如下:

require(["dojox/charting/Chart", "dojox/charting/themes/Shrooms", "dojox/charting/plot2d/Areas", ...],
function(Chart, Shrooms, Areas, ...){
   new Chart(node)
   addPlot("default", { type: Areas, tension: "X" })
   setTheme(Shrooms)
   addSeries("Series A", [1, 2, 0.5, 1.5, 1, 2.8, 0.4])
   addSeries("Series B", [2.6, 1.8, 2, 1, 1.4, 0.7, 2])
   addSeries("Series C", [6.3, 1.8, 3, 0.5, 4.4, 2.7, 2])
  render();
});

在此示例中,将加载主题“Shrooms”。

在这里您可以看到,图表可以使用哪些主题:

http://demos.dojotoolkit.org/demos/chartTypes/demo.html

在dojo API中,您可以在dojox / charting / themes下找到它们。

这是一个很好的教程,您可以自己定义主题: http://dojotoolkit.org/documentation/tutorials/1.9/charting/

此致,Miriam