我正在使用核心情节创建我的图表。
我希望在我的条形图中有一个渐变,以便颜色从黄色开始变为红色。然而,这取决于杆的高度。例如,图表应如下所示:
我正在使用应用程序中最右边(最高的)的图像。但是有两个问题。
1)酒吧是颠倒的。所以他们从红色开始,然后变黄。
2)如果我使用的图像太大,则条形图全部为红色。如果我使用太小的图像,它会重复开始。如果我使用正确尺寸的图像,那么它似乎有效。但是,我将在多个图表中使用这些图像,这些图像不会都是相同的大小。因此,使图像尺寸合适似乎效率低下。另外,每个情节我会有多个条形图,因此如果图形改变大小,那么这意味着所有图像都必须更改。
以下是我用来创建条形码的代码:
CPTImage *image = [CPTImage imageForPNGFile:@"gradient-bar"];
image.tiled = YES;
CPTFill *areaFill = [CPTFill fillWithImage:image];
CPTBarPlot *plot = [[CPTBarPlot alloc] init];
plot.fill = areaFill;
plot.identifier = @"BIP";
以下是条形图像尺寸合适的图像:
我正在寻找的主要内容是能够在任何尺寸的图形上使用一个图像。
非常感谢。
=====
修改
如果我设置了image.tiled = NO,我会得到以下图表:
我希望这些图表与原始帖子中的图像一样。因此,在250左右,它应该只是黄色。然而,如果它是1000,它应该通过从黄色到红色的整个颜色范围。
答案 0 :(得分:0)
您正在使用平铺图像,这就是当条形图大于原始图像时重复的原因。将tiled
设置为NO
以拉伸图像以填充条形图。我不知道为什么会被翻转。