0

我需要在android中显示折线图、条形图和蜡烛图。

为此,我正在使用 jqPlot 图表。

我将字符串值从 java 代码传递给 javascript 函数。

在蜡烛图中,脚本仅接受二维数组中的值。

如何在 java 脚本中将字符串转换为二维数组。我的代码如下。

在java代码中。

String myValue = "'06/15/2009 16:00:00', 136.01, 139.5, 134.53, 139.48_"+ "'06/15/2009 16:00:00', 136.01, 139.5, 134.53, 139.48";
webView.loadUrl("javascript:showCandleChart(" + myValue+ ")");

java脚本接受这种格式的值

ohlc = [
    ['06/15/2009 16:00:00', 136.01, 139.5, 134.53, 139.48],
    ['06/08/2009 16:00:00', 143.82, 144.56, 136.04, 136.97],
    ['06/01/2009 16:00:00', 136.47, 146.4, 136, 144.67],
    ['05/26/2009 16:00:00', 124.76, 135.9, 124.55, 135.81],
    ['05/18/2009 16:00:00', 123.73, 129.31, 121.57, 122.5],
    ['05/11/2009 16:00:00', 127.37, 130.96, 119.38, 122.42],
    ['05/04/2009 16:00:00', 128.24, 133.5, 126.26, 129.19],
    ['04/27/2009 16:00:00', 122.9, 127.95, 122.66, 127.24],
    ['04/20/2009 16:00:00', 121.73, 127.2, 118.6, 123.9]]

我的java脚本函数

function showCandleChart(ohlc) {
// here ohlc string need to convert to 2D array as shown in above format.
var plot2 = $
    .jqplot(
            'chart2',
            [ ohlc ],
            {
                seriesDefaults : {
                    yaxis : 'y2axis'
                },
                axes : {
                    xaxis : {
                        renderer : $.jqplot.DateAxisRenderer,
                        tickOptions : {
                            formatString : '%b %e'
                        },
                        min : "09-01-2008",
                        max : "06-22-2009",
                        tickInterval : "6 weeks"
                    },
                    y2axis : {
                        tickOptions : {
                            formatString : '$%d'
                        }
                    }
                },
                // To make a candle stick chart, set the "candleStick" option to true.
                series : [ {
                    renderer : $.jqplot.OHLCRenderer,
                    rendererOptions : {
                        candleStick : true
                    }
                } ],
                highlighter : {
                    show : true,
                    showMarker : false,
                    tooltipAxes : 'xy',
                    yvalues : 4,
                    formatString : 

'<table class="jqplot-highlighter"> \
  <tr><td>date:</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>'
                    }
                });

}

请帮忙..我应该得到这样的输出。 在此处输入图像描述

4

1 回答 1

0

RGraph 使用 HTML5 Canvas 组件,它不包含在 Android 1.5 打包的 webkit 中。RGraph 在 Android 2.1 和 2.2 上运行良好并经过测试。

HTML/Javascript 方法的示例:

使用 Epoch 3D 旋转立方体的日历使用 HTML/Javascript

于 2013-08-03T10:36:15.753 回答