是否可以使用Objective-C在iphone中创建这样的图形。
我已经从hg clone http://core-plot.googlecode.com/hg/ core-plot下载了核心图库,并尝试从http://www.jaysonjc.com/programming/pie-chart-drawing-in-iphone-using-core-plot-library.html做一个例子,但我甚至无法做到也没有建立的下载。它给出的错误是:
/Users/apple/Desktop/coreplotLibExamples/piechartsample/Classes/PieChart_SampleViewController.m:15:0 /Users/apple/Desktop/coreplotLibExamples/piechartsample/Classes/PieChart_SampleViewController.m:15:error:'CPLayerHostingView'undeclared(first在这个函数中使用)
答案 0 :(得分:1)
这取决于您的需求。如果y轴上有固定数量的类别,则可以创建三个UIViews,红色,黄色和绿色,然后分别设置宽度。如果您有不同数量的类别/比例,则需要进行石英绘图,并且可能需要查看图形API,例如core plot。
无论如何,要使用UIViews执行此操作,您的代码将看起来像这样(对于图中的每个项目):(未经测试)......
#define kBarHeight 50 // Or however much you want
float graphWidth = 200; // Suppose you had 200 px across.
int high = 3;
int emerging = 3;
int low = 6;
float total = high+emerging+low;
float oneSect = graphWidth/total;
redView.frame = CGRectMake(0,0,oneSect*high,kBarHeight);
yellowView.frame = CGRectMake(redView.frame.size.width,0,oneSect*emerging,kBarHeight);
greenView.frame = CGRectMake(redView.frame.size.width+yellowView.frame.size.width,0,oneSect*low,kBarHeight);
答案 1 :(得分:1)
您可以使用Core Plot
答案 2 :(得分:0)
对于上面编辑的问题,它给出了错误,因为'CPLayerHostingView'是针对MAC的。我们需要在iphone和viewDidLoad方法中使用'CPTGraphHostingView'.hostedGraph = graph;