很明显,我需要尝试修改 CorePlot 代码以允许我绘制 Polar/Radar 图,因为试图将圆/辐条绘制为 ScatterPlot 时内存使用量很大。
我意识到我可以继续对实际的极坐标数据使用 CPTScatterPlot,但是不知何故我需要修改 drawGridLinesInContext,这样,CPTXCoordinate 将绘制圆形线,而不是在每个位置绘制直线,CPTYCoordinate 将被忽略,而 CPTZCoordinate 将绘制辐条。
我必须基于它们的 XY 兄弟创建新类,即 CPTPolarGraph、CPTPolarPlotSpace、CPTPolarAxisSet、CPTPolarAxis。新代码继续使用 X 和 Y 轴来绘制这些轴,但是引入了 Z 轴来管理辐条。
现在我似乎已经破解了这个,但是如果我向上和向下滚动,圆圈会继续通过 X 和 Y 轴刻度,就像它们应该做的那样,但是当我左右滚动时,圆圈会被重新绘制并且不再坐在蜱虫上。
我显然需要在这里进行更多调试,但希望 CorePlot 工作人员提供一些关于可能发生的事情的指示。我可以压缩我修改过的 CorePlot_1.1 版本,包括一个示例极坐标散点图,如果需要,可以转发。