jQplot OHLC渲染器鼠标悬停为条形

时间:2013-10-24 03:04:04

标签: javascript jquery jqplot

我刚刚使用 jQplot 插件实现了一个图表。我使用 OHLCRenderer 作为渲染器,图表看起来像这样。

My jQplot OHLCRenderer chart with multiple stack

你能否告诉我如何在栏上添加鼠标悬停选项,以便在鼠标悬停在每个栏上时显示一些信息。感谢

这是代码

var catOHLC = [
    [1, 10, 6.5, 10, 10],
[2, 1.2, 5, 1.2, 1.2],
[3, 8, 10, 8, 8],
];

var catOHLC1 = [
    [1, 0, 5, 0, 0]

];

var ticks = ['A', 'B', 'C', 'D', 'E'];
var ticks2 = [12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0];
plot4 = $.jqplot('chart4', [catOHLC, catOHLC1], {
    stackSeries: true,
  axes: {
      xaxis: {
          renderer:$.jqplot.CategoryAxisRenderer,
          ticks:ticks
      },
      yaxis: {
          tickRenderer: $.jqplot.CanvasAxisTickRenderer,
          ticks: ticks2,
          max: 24,
          min: 0
      }
  },
  series: [{ renderer: $.jqplot.OHLCRenderer, rendererOptions: { candleStick: false, tickLength: 0, lineWidth: 10 } },
  { renderer: $.jqplot.OHLCRenderer, rendererOptions: { candleStick: false, tickLength: 0, lineWidth: 10 } }],
});});

1 个答案:

答案 0 :(得分:1)

我使用了jqplot highlighter插件,使用稍微修改过的代码版本来完成这项工作。 Here is the jsfiddle,代码如下。请注意,这与http://www.jqplot.com/tests/candlestick-charts.php上的示例非常相似。

plot4 = $.jqplot('chart4', [catOHLC, catOHLC1], {

    series: [{
        renderer: $.jqplot.OHLCRenderer,
        rendererOptions: {
            tickLength: 4,
            lineWidth: 10
        }
    }, {
        renderer: $.jqplot.OHLCRenderer,
        rendererOptions: {
            tickLength: 4,
            lineWidth: 10
        }
    }],

    highlighter: {
        show: true,
        showMarker: false,
        tooltipAxes: 'xy',
        yvalues: 4,
        formatString: '<table class="jqplot-highlighter"> \
  <tr><td>x:</td><td>%s</td></tr> \
  <tr><td>open:</td><td>%s</td></tr> \
  <tr><td>hi:</td><td>%s</td></tr> \
  <tr><td>low:</td><td>%s</td></tr> \
  <tr><td>close:</td><td>%s</td></tr></table>'
    }
});