复数应用 - 用核心图,电力图或其他图表绘制图表?

时间:2012-05-04 10:04:06

标签: ios graphics core-plot graphing

我正在编写iOS应用程序,它将向用户解释复杂的数字。复数可以用笛卡尔坐标显示,这就是我想要做的;在屏幕上打印一个或多个矢量。

我正在寻找将3个矢量打印到坐标系中的最简单方法,该坐标系将自身调整为矢量大小(如果x-coord是> y-coord将两个轴调整为x-coord,反之亦然)。

我尝试使用Core Plot,我认为这对我来说太过多功能了。 现在我正在使用PowerPlot,我的坐标系已经很好了,但我仍然遇到一些问题(x和y轴设置为x和y值,导致45度角线,无论用户输入)。

CorePlot和PowerPlot中的示例功能似乎无法满足我的需求。

我的最后两种方法是使用HTML和Web视图,并使用Quartz自己完成所有这些(不是简单的方法......)

你有什么建议怎么做这个简单的方法,因为这是一个简单的问题,我猜?

2 个答案:

答案 0 :(得分:1)

如果你不想做太多实际的图形和绘图,那么使用Core Plot或类似的声音对我来说就像是有些过分。将核心图添加到项目中的额外膨胀,更不用说了解如何使用它的时间,对于一些简单的图形来说可能不值得。

Quartz非常适合在屏幕上显示几个矢量,假设您对花哨的3D图形不感兴趣。有很多教程和使用Core Graphics(AKA Quartz)绘制线条等的例子。如果你要使用Quartz路线,或许可以在Quartz中进行一些简单的线条绘制,那么如果你需要有关数学的帮助,可以提出更多问题方面。

使用Quartz渲染时使用的典型技术是覆盖drawRect的子类中的UIView,并在那里调用Core Graphics绘图函数。

Quartz线条图的一个不错的问题和例子在这里:

How do I draw a line on the iPhone?

答案 1 :(得分:0)

如果您不喜欢使用Google Chart Image,则可以通过调用相应的URL然后将图像放入UIImageView,以简单的方式加载相当复杂的数据集。它只需要很少的代码:这里有一个带有示例代码的blog post explanation

限制是

  • 数据集的长度受到您可以从Google请求的最大网址长度的限制(2048个字符,编码很大),尽管我已经在4个系列中绘制了120个数据点。
  • 需要网络连接(至少要获取初始图表)
  • 也许是最大的问题,API已被弃用,并将在2015年停止使用。然后,您必须切换到UIWebView / Javascript Google Chart API实现...

示例图片:

enter image description here