0

我是 Xamarin 的新手,我正在尝试在 Xamarin.Android 中使用 ShinobiCharts 来显示烛台数据。来自 .axml 的代码:

<fragment
            class="com.shinobicontrols.charts.ChartFragment"
            android:id="@+id/chart"
            android:layout_width="match_parent"
            android:layout_height="match_parent" />

这是应该显示图表的片段。

var chartFragment = (ChartFragment)FragmentManager.FindFragmentById(Resource.Id.chart);
var chart = chartFragment.ShinobiChart;
chart.SetLicenseKey("license_key");

chart.AddXAxis(new DateTimeAxis
            {
                GesturePanningEnabled = true,
                GestureZoomingEnabled = true
            });

chart.AddYAxis(new NumberAxis
            {
                GesturePanningEnabled = true,
                GestureZoomingEnabled = true
            });

var dataPoints =
                quotes.Select(
                    quoteCandle =>
                        new MultiValueDataPoint(DateUtils.ConvertToJavaDate(TimeStamp.UnixToDate(quoteCandle.Timestamp)),
                            (double) quoteCandle.Low, (double) quoteCandle.High,
                            (double) quoteCandle.Open, (double) quoteCandle.Close)).ToList();

var series = new OHLCSeries { DataAdapter = new SimpleDataAdapter() };
series.DataAdapter.AddAll(dataPoints);
chart.AddSeries(series);
chart.XAxis.Style.GridlineStyle.GridlinesShown = true;
chart.YAxis.Style.GridlineStyle.GridlinesShown = true;
chart.RedrawChart();

这是创建 ShinobiCharts 的代码。问题是图表中未显示添加的系列。风格变了,但没有系列。我做错了什么?我希望任何人都可以提供帮助。

4

2 回答 2

0

正如 sammyd 所说,CandlestickSeries 可用于 Android 的 ShinobiCharts 试用版(与所有其他高级功能一样)。您是否设法让 CandlestickChart 示例运行?该示例包含在下载包中。

从表面上看,您的代码看起来不错(看不到其余部分),但我建议您检查几件事:

  1. 您是否已将字符串license_key替换为下载捆绑包时我们会通过电子邮件发送给您的试用许可证密钥?试用许可证密钥是一个非常长的字符串和数字。
  2. 您的数据是否按预期输入,是否有意义(例如,您的低值是否小于您的开放值等)?
  3. 我不确定它会产生很大的不同,因为它们几乎可以互换,但是您实际上是在代码中创建 OHLCSeries 但提到了 CandlestickSeries
  4. 您是否以阻止其显示的方式设置系列的样式对象,即您是否将其设置为颜色透明?
  5. 您是否收到实际错误,如果是,正在记录什么消息?

希望以上内容可以帮助您启动并运行烛台图!

编辑:

如果您使用的是 Android 模拟器,您的 AVD 需要打开 GPU 模拟(因为我们使用 OpenGL ES 2.0 来渲染图表)。在Android 开发者网站上有更多关于将模拟器与 OpenGL 结合使用的信息。

免责声明:我为 ShinobiControls 工作

于 2014-06-04T08:53:22.487 回答
0

抱歉,烛台不适用于 ShinobiControls 的试用版,仅适用于高级版。

于 2014-05-30T12:51:48.317 回答