2011-07-30 24 views
0

感謝。 是否有可能在iphone中使用Objective c創建一個像這樣的圖形。 enter image description here如何在iPhone中創建圖表預先編程

我已經下載和HG克隆http://core-plot.googlecode.com/hg/核心地塊的核心情節圖書館和嘗試做從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:錯誤:「CPLayerHostingView」未申報(在一次使用此功能)

如果任何一個有想法有什麼問題,請幫助做到這一點。

+0

的可能重複的[可可圖形/繪圖框架,工程上的iPhoneOS](http://stackoverflow.com/questions/263472/cocoa-graphing-plotting-framework-that-works-on-iphoneos) –

回答

1

這取決於你的需求。如果您在y軸上有固定數量的類別,則可以創建三個UIView,分別爲紅色,黃色和綠色,然後分別設置寬度。如果你有不同數量的類別/規模,你將需要做的石英繪圖,可能要尋找到一個圖形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); 
0

對於上面編輯的問題,它是給錯誤,因爲'CPLayerHostingView'用於MAC。我們需要使用'CPTGraphHostingView'for iphone和viewDidLoad方法.hostedGraph = graph;

相關問題