0

Core-Plotを使用して、時間の経過に伴う温度値を視覚化しています。これは1つの例外を除いて正常に機能します。軸にタイトルが表示されず、目盛りもラベル付けされません。

以下に、私が使用しているコードを示します。CorePlotの最新バージョンであるCocoaTouchを使用しています。どんな助けでも大歓迎です!前もって感謝します。

注:基本的に、このSOの質問で述べたのと同じ問題が発生しますが、プロジェクトからCorePlotを削除/追加しても、問題は解決しません。

編集:リポジトリの最新バージョンを使用しました。1.0(ダウンロード)に変更すると、魅力のように機能します。

CPTXYGraph *graph = [[CPTXYGraph alloc] initWithFrame:CGRectZero];
graphHostingView.collapsesLayers = NO; 
graphHostingView.hostedGraph     = graph;

graph.paddingLeft   = 10.0;
graph.paddingTop    = 10.0;
graph.paddingRight  = 10.0;
graph.paddingBottom = 10.0;

CPTXYPlotSpace *plotSpace = (CPTXYPlotSpace *)graph.defaultPlotSpace;
plotSpace.allowsUserInteraction = YES;
plotSpace.xRange                = [CPTPlotRange plotRangeWithLocation:CPTDecimalFromFloat(0.0) length:CPTDecimalFromFloat(500.0)];
plotSpace.yRange                = [CPTPlotRange plotRangeWithLocation:CPTDecimalFromFloat(0.0) length:CPTDecimalFromFloat(40.0)];

CPTXYAxisSet *axisSet = (CPTXYAxisSet *)graph.axisSet;    
CPTXYAxis *x          = axisSet.xAxis;
x.title = @"Date";
x.majorIntervalLength         = CPTDecimalFromString(@"280");
x.orthogonalCoordinateDecimal = CPTDecimalFromString(@"0");
x.minorTicksPerInterval       = 4;    

CPTXYAxis *y = axisSet.yAxis;
y.title = @"Temperature";
y.majorIntervalLength         = CPTDecimalFromString(@"10");
y.orthogonalCoordinateDecimal = CPTDecimalFromString(@"0");
y.minorTicksPerInterval       = 2;    

CPTScatterPlot *temperaturePlot  = [[CPTScatterPlot alloc] init];
temperaturePlot.interpolation = CPTScatterPlotInterpolationCurved;
temperaturePlot.dataSource    = self;

[graph addPlot:temperaturePlot];

編集:以下のスクリーンショットに見られるように、plotAreaにパディングを追加しても効果はありません。 パディングなしでプロット パディング付きのプロット

4

3 に答える 3

0

ラベル用のスペースを確保するために、プロットエリアフレームにパディングを追加する必要があります。

graph.plotAreaFrame.paddingLeft   = 70.0;
graph.plotAreaFrame.paddingTop    = 20.0;
graph.plotAreaFrame.paddingRight  = 20.0;
graph.plotAreaFrame.paddingBottom = 80.0;
于 2012-07-26T00:02:57.163 に答える
0

軸にカスタムラベルのテキストスタイルを含むlabelTextStyleプロパティを追加してみてください。 axisSet.xAxis.labelTextStyle = LabelStyle; LabelStyleはのオブジェクトですCPTMutableTextStyle

于 2012-07-26T07:28:20.140 に答える
0

この問題はまだ解決されていないので、公式の問題リスト(コアプロットの問題)に転送しました。今のところ、期待どおりに機能しているバージョン1.0に切り替えました。

于 2012-09-18T11:34:36.157 に答える