0

シナリオ: 5 つの期間 {3M、6M、1Y、2Y & 3Y} の 5 つのグラフ。それぞれに独自の (1-2) 散布図があります。同じ y 範囲 (値) を共有します。
各期間には、異なる x 範囲とラベル付けポリシーがあります。
たとえば、修正ポリシーまたは場所ポリシーのいずれかを持つことができます。別のなし。

X-Range は不変/plot-space のようです。
そのため、特定の xRanges とラベル付けポリシーを使用して、パラレル プロット スペースを作成することを考えています。
プロット スペースと x.axis(s) および plot(s) との関係を調べました。

グラフ <=== {NSMutableArray *plotSpaces}
x.axis/plot-space.
plot/plot-space

したがって、次のことができると思います:
1) プロットスペースを作成します。
2) プロット空間を特定のプロット、x 軸および xRange に割り当てます。
3) プロットをグラフに追加またはグラフから削除します。
4) グラフを再描画します。

したがって、ユーザーが期間/プロットスペースを選択するとき、私がする必要があるのは、既存のプロットを期間プロットに置き換えることです。これにより、グラフにプロットがプロットされ、それぞれの x 軸が表示されます (Y 軸は一般的です) )?

[myGraph removePlot:(CPTPlot *)oldPlot];
[myGraph addPlot:(CPTPlot *)plot toPlotSpace:(CPTPlotSpace *)space];

...ここで少し迷っています。

?

4

1 に答える 1

0

軸もプロット スペースに割り当てられます。軸も交換する必要があります。常にプロットと軸を追加および削除すると、比較的大きなパフォーマンス ヒットが発生します。

ご覧のとおり、プロット範囲は不変です。これは、新しい範囲を設定できないということではなく、既存の範囲を変更できないことを意味します。新しいCPTPlotRangeオブジェクトを作成するか、既存のオブジェクトの変更可能なコピーを作成します。

プロットの縮尺を変更したい場合はいつでも、次のことを行う必要があります。これらはすべて、グラフの主要な部分を削除したり置き換えたりすることなく、その場で変更できます。

  1. 上記のようにプロット範囲を変更します。
  2. 軸のラベル付けポリシーと関連するプロパティを更新します。
  3. -reloadDataプロットを呼び出して、新しいデータを読み込みます。
于 2012-10-26T01:17:13.153 に答える