使用填充图案而不是HighCharts的颜色

时间:2013-07-03 13:11:04

标签: javascript svg highcharts

我一直在研究在webapps中生成图表的各种方法,并发现HighCharts特别有用。该应用程序需要迎合色盲,因此我正在考虑使用模式而不是填充颜色 - 如in this question所述。

这样的事情需要在SVG的<defs>部分:

<pattern id="triangles"  width="10" height="10" patternUnits="userSpaceOnUse">
    <polygon points="5,0 10,10 0,10"/>
</pattern>
<pattern id="diagonal-hatch" patternUnits="userSpaceOnUse" width="4" height="4">
    <path d="M-1,1 l2,-2 M0,4 l4,-4 M3,5 l2,-2"/>
</pattern>
<pattern id="cross-hatch" patternUnits="userSpaceOnUse" x="0" y="0" width="6" height="6">
    <g style="fill:none; stroke:#22fa23; stroke-width:1">
        <path d="M0,0 l10,10"/>
        <path d="M10,0 l-10,10"/>
    </g>
</pattern>

然后代替fill="#0d233a"我有fill="url(#triangles)"

还有其他人用HighCharts做过这件事吗?是不是可以让HighCharts这样做而不会将其破坏成碎片?

2 个答案:

答案 0 :(得分:5)

似乎有pattern fill plugin

答案 1 :(得分:4)

您可以使用Highcharts plugin。主题已创建here

例如系列的模式:

{
    type: 'column',
    data: [148.5, 216.4, 194.1, 95.6, 54.4, 29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6],
    color: {
        pattern: 'http://highcharts.com/demo/gfx/pattern2.png',
        width: 6,
        height: 6,
        // VML only:
        color1: 'red',
        color2: 'yellow'
    }
}