我是Shinobi Tools的新手,我有一組要點,我想要連接到一系列線。我看到shinobi提供了SChartLineSeries這個功能。難道有人會那麼好,並向我解釋:D?我真的沒有得到文件。 代碼示例會很好!Shinobi Chart LineSeries Swift/Obj-C
這是我想達到的目標。我有5個x和y值。那些不應該用直線連接。樣條線
我是Shinobi Tools的新手,我有一組要點,我想要連接到一系列線。我看到shinobi提供了SChartLineSeries這個功能。難道有人會那麼好,並向我解釋:D?我真的沒有得到文件。 代碼示例會很好!Shinobi Chart LineSeries Swift/Obj-C
這是我想達到的目標。我有5個x和y值。那些不應該用直線連接。樣條線
您是不是看了這個:https://www.shinobicontrols.com/ios/shinobicharts/quickstartguide?其實很好,但他們的頁面並不那麼用戶友好,起初我有麻煩找到它。
下面的解決方案在Objective-C中,但它應該直接轉換成Swift。
簡而言之: 首先導入的框架:
#import <ShinobiCharts/ShinobiChart.h>
然後創建圖表對象和所述軸:
// in viewDidLoad
ShinobiChart* _chart;
_chart.xAxis = [[SChartNumberAxis alloc] init];
_chart.yAxis = [[SChartNumberAxis alloc] init];
_chart = [[ShinobiChart alloc] initWithFrame:self.view.bounds];
[self.view addSubview:_chart];
然後實現數據源<SChartDatasource>
:
// in viewDidLoad
_chart.datasource = self;
- (int)numberOfSeriesInSChart:(ShinobiChart *)chart {
return 2;
}
-(SChartSeries *)sChart:(ShinobiChart *)chart seriesAtIndex:(int)index {
SChartLineSeries *lineSeries = [[SChartLineSeries alloc] init];
if (index == 0) {
lineSeries.title = [NSString stringWithFormat:@"y = cos(x)"];
} else {
lineSeries.title = [NSString stringWithFormat:@"y = sin(x)"];
}
return lineSeries;
}
- (int)sChart:(ShinobiChart *)chart numberOfDataPointsForSeriesAtIndex:(int)seriesIndex {
return 100;
}
- (id<SChartData>)sChart:(ShinobiChart *)chart dataPointAtIndex:(int)dataIndex forSeriesAtIndex:(int)seriesIndex {
SChartDataPoint *datapoint = [[SChartDataPoint alloc] init];
// both functions share the same x-values
double xValue = dataIndex/10.0;
datapoint.xValue = [NSNumber numberWithDouble:xValue];
// compute the y-value for each series
if (seriesIndex == 0) {
datapoint.yValue = [NSNumber numberWithDouble:cosf(xValue)];
} else {
datapoint.yValue = [NSNumber numberWithDouble:sinf(xValue)];
}
return datapoint;
}
聲明:數據源實現來自qui ck開始指南,我上面介紹了哪個鏈接。
- 編輯 -
曲線,你需要自己添加更多的數據點(計算值,並設置超過5個點)的圖表。請參閱Shinobi Chart支持論壇上的討論:https://www.shinobicontrols.com/forum/shinobicontrols/2015/6/spline-line-chart。
免責聲明:我是Shinobi Controls的開發人員。
我們目前的SChartLineSeries不支持直接開箱即用的流暢線條。
但是,這是一個頻繁請求的功能,因此我們的下一個版本的圖表包含使平滑線條更容易實現的功能。
與此同時,您可以通過向圖表中添加更多數據點來獲得平滑線條,爲它們提供將繪製曲線的數據值。正如Vive在她的回答中解釋的那樣。
我們將在包含此功能的版本發佈後更新此帖子。
親切的問候,
安德魯Polkinghorn。
謝謝是的,我已經看到了這一點。但是如果我用自己的填充x和y值,那麼我只能得到折線圖。但我想要的是那些線條變圓,而不是那些直線。我會上傳一張picutre – Anokrize
@Anokrize我不明白你到底需要做什麼。編輯問題後,在評論中提及我。也許添加更多細節(如果您以前添加它,我不會重寫您已經做過的事情......)。 – Vive
現在看下面的圖片是我想要實現的@Vive – Anokrize