Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Программирование iOS/iPhone

Войти
Регистрация
Восстановить пароль
 
Johnybgoode777
0 / 0 / 0
Регистрация: 29.12.2013
Сообщений: 13
#1

Как привязать точки в CorePlot? - Программирование iOS

08.01.2014, 05:18. Просмотров 615. Ответов 7
Метки нет (Все метки)

Всем привет! Бьюсь над этой проблемой уже третьи сутки. Я не понимаю, как привязать точки из _graphData к plot'у. При запуске проги у меня отображается пустая координатная сетка. Искал примеры кода, даже нашёл один проект XCode(ссылку на него сейчас найти уже не могу), но у меня не получается прикрутить этот код к своему проекту, поэтому пришлось написать свой говнокод.
Во всех примерах есть эта строчка.
Objective-C
1
 plot.dataSource=self;
Но я не понимаю её смысла. Почему присваивается self? Тут нужно как-то данные из _graphData загрузить в plot.
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
 CGRect  viewRect = CGRectMake(175, 20 , 280, 320 );
            CustomView *myView = [[CustomView alloc]initWithFrame:viewRect];
            myView.autoresizingMask = NSViewWidthSizable | NSViewHeightSizable;
            [self.view addSubview:myView];
            [myView drawRect:viewRect];
           _graph = [[CPTXYGraph alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width*0.95, self.view.frame.size.height*0.9)];
           _graph.backgroundColor = [CPTColor clearColor].cgColor;
           _graph.autoresizingMask = NSViewWidthSizable | NSViewHeightSizable;
           CPTTheme * theme = [CPTTheme themeNamed:kCPTPlainWhiteTheme];
           [_graph applyTheme:theme];
           _hostingView = [[CPTGraphHostingView alloc] initWithFrame:CGRectMake(175, self.view.frame.size.height*0.08 , self.view.frame.size.width*0.8, self.view.frame.size.height*0.9)];
           _hostingView.hostedGraph = _graph;
           _hostingView.autoresizingMask = NSViewWidthSizable | NSViewHeightSizable;
           [self.view addSubview:_hostingView];
           _graph.fill = [CPTFill fillWithColor:[CPTColor whiteColor]];
           CPTXYPlotSpace *plotSpace = (CPTXYPlotSpace *)_graph.defaultPlotSpace;
           plotSpace.xRange = [CPTPlotRange plotRangeWithLocation:CPTDecimalFromFloat([intbeg doubleValue]) length:CPTDecimalFromFloat([intend doubleValue])];
           plotSpace.yRange = [CPTPlotRange plotRangeWithLocation:CPTDecimalFromFloat([intbeg doubleValue]-5*[intend doubleValue]) length:CPTDecimalFromFloat(10*[intend doubleValue])];
           self.graph.plotAreaFrame.paddingTop = 20.0f;
           self.graph.plotAreaFrame.paddingRight = 30.0f;
           self.graph.plotAreaFrame.paddingBottom = 30.0f;
           self.graph.plotAreaFrame.paddingLeft = 30.0f;
           CPTXYAxisSet *axisSet = (CPTXYAxisSet *)self.graph.axisSet;
           CPTMutableLineStyle *lineStyle = [CPTMutableLineStyle lineStyle];
           lineStyle.lineColor = [CPTColor blackColor];
           lineStyle.lineWidth = 2.0f;
           
           // Create a text style that we will use for the axis labels.
           CPTMutableTextStyle *textStyle = [CPTMutableTextStyle textStyle];
           textStyle.fontName = @"Helvetica";
           textStyle.fontSize = 14;
           textStyle.color = [CPTColor blackColor];
 
           axisSet.xAxis.title = @"Data X";
           axisSet.xAxis.titleTextStyle = textStyle;
           axisSet.xAxis.titleOffset = 4.0f;
           axisSet.xAxis.axisLineStyle = lineStyle;
           axisSet.xAxis.majorTickLineStyle = lineStyle;
           axisSet.xAxis.minorTickLineStyle = lineStyle;
           axisSet.xAxis.labelTextStyle = textStyle;
            axisSet.xAxis.minorTicksPerInterval = 1;
           axisSet.yAxis.title = @"Data Y";
           axisSet.yAxis.titleTextStyle = textStyle;
           axisSet.yAxis.axisLineStyle = lineStyle;
           axisSet.yAxis.majorTickLineStyle = lineStyle;
           axisSet.yAxis.minorTickLineStyle = lineStyle;
           axisSet.yAxis.labelTextStyle = textStyle;
           [_graphData addObject:[NSValue valueWithPoint:CGPointMake(0, 1)]];
           [_graphData addObject:[NSValue valueWithPoint:CGPointMake(0.4, 0.5)]];
           [_graphData addObject:[NSValue valueWithPoint:CGPointMake(0.5, 0.3)]];
           [_graphData addObject:[NSValue valueWithPoint:CGPointMake(0.8, 0.6)]];
           [_graphData addObject:[NSValue valueWithPoint:CGPointMake(1, 1)]];
           [_graphData addObject:[NSValue valueWithPoint:CGPointMake(1.3, 1.6)]];
           [_graphData addObject:[NSValue valueWithPoint:CGPointMake(1.8, 1.8)]];
           [_graphData addObject:[NSValue valueWithPoint:CGPointMake(2, 1.9)]];
           [_graphData addObject:[NSValue valueWithPoint:CGPointMake(2.3, 2.7)]];
           [_graphData addObject:[NSValue valueWithPoint:CGPointMake(2.8, 4)]];
           [_graphData addObject:[NSValue valueWithPoint:CGPointMake(3, 5)]];
           CPTScatterPlot *plot = [[CPTScatterPlot alloc] init];
           plot.dataSource=self;
           plot.identifier = @"mainplot";
           plot.dataLineStyle = lineStyle;
           [_graph addPlot:plot];
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.01.2014, 05:18
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как привязать точки в CorePlot? (Программирование iOS):

Построение графиков минуя CorePlot - Objective-C
Здавствуйте. Какие еще существуют варианты построения графиков средствами xcode (желательно попроще, я начинающий)? Core Plot у...

Как найти координаты точки на прямой удаленной от заданной точки на х - C++
Добрый день! Помогите мне пожалуйста со следующей задачей. Дано 3 точки с координатами A(x1,y1), B(x2,y2), C(x3,y3) Нужно найти...

Как в графике отобразить точки пересечения, а также сумму точки x+y - MS Excel
Как в графике отобразить точки пересечения? А также также рядом указать сумму точки x+y как в примере. То есть пример точки 31=30+1 или...

Как привязать backspace - Delphi
Задали мне написать калькулятор. Вроде все делает как надо, но не могу задействовать кнопку backspace, чтобы при ее нажатии удалялись цифры...

Как привязать элементы? - C# WPF
Доброго времени суток! Возник вопрос: как привязать какие-либо элементы (кнопки, текстовые блоки и т.д.) к гриду, чтобы при открытии...

Как привязать сайт к 1C? - Web
Ребят подскажите, пожалуйста, мой сайт http://greemvas.ru написан с использованием фреймворкера YII, очень хочу его привязать теперь к 1С,...

7
mobidevelop
182 / 182 / 3
Регистрация: 10.01.2013
Сообщений: 596
08.01.2014, 08:14 #2
Цитата Сообщение от Johnybgoode777 Посмотреть сообщение
Во всех примерах есть эта строчка.
Код Objective-C
1
plot.dataSource=self;
Но я не понимаю её смысла.
Простите меня, но рано вам в таком случае с графиками разбираться. Вы бы с азами платформы сначала познакомились. ИМХО, разумеется
0
Johnybgoode777
0 / 0 / 0
Регистрация: 29.12.2013
Сообщений: 13
08.01.2014, 14:36  [ТС] #3
Ну ОК, спасибо за помощь. Что такое self, я знаю, не тупой. Я не знаю, почему его в dataSource присваивают. Я описал же все выше, неужели непонятно?
0
mobidevelop
182 / 182 / 3
Регистрация: 10.01.2013
Сообщений: 596
08.01.2014, 15:46 #4
После прочтения вашего первого поста у меня и мысли не возникло о вашей тупости. Я просто сделал предположение, что вы пока достаточно слабо разбираетесь в том, за что взялись, и посоветовал вам изучать iPhone SDK на более простых примерах, нежели подключение сторонних библиотек уровня CorePlot. Поверьте, это добрый совет. А для разжевывания элементарных понятий типа MVC, Delegate etc есть книги. Я не понимаю почему большинство людей вашего возраста их так ненавидит
0
Johnybgoode777
0 / 0 / 0
Регистрация: 29.12.2013
Сообщений: 13
08.01.2014, 16:05  [ТС] #5
Вы бы лучше по теме моего вопроса ответили, книги я и сам догадаюсь почитать.
0
mobidevelop
182 / 182 / 3
Регистрация: 10.01.2013
Сообщений: 596
08.01.2014, 16:14 #6
Уважаемый, вы не наблюдательны. Повторяю совсем просто: MVC, Delegate. Разжевывать дальше - это совсем грустно
0
Johnybgoode777
0 / 0 / 0
Регистрация: 29.12.2013
Сообщений: 13
08.01.2014, 17:34  [ТС] #7
Что такое MVC и Delegate я понял, но почему мой код не работает всё равно не догоняю.
0
glvrzzz
95 / 71 / 12
Регистрация: 12.12.2012
Сообщений: 214
09.01.2014, 13:33 #8
Цитата Сообщение от Johnybgoode777 Посмотреть сообщение
Почему присваивается self?
Вы правда думаете, что по вашему коду понятно, что такое в данном случае self?

Вы пишете:
Цитата Сообщение от Johnybgoode777 Посмотреть сообщение
Что такое MVC и Delegate я понял
И при этом:
Цитата Сообщение от Johnybgoode777 Посмотреть сообщение
Я не понимаю, как привязать точки из _graphData к plot'у.
Цитата Сообщение от Johnybgoode777 Посмотреть сообщение
Во всех примерах есть эта строчка. Но я не понимаю её смысла.
Значит не поняли.
Для начала разберитесь, как работает делегирование, потом идете в место, где объявлен протокол dataSource и разбираетесь какие методы вам надо имплементировать в вашем dataSource, там подробные комментарии, так что дальше объяснять не вижу смысла.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.01.2014, 13:33
Привет! Вот еще темы с ответами:

Как привязать ContextMenuStrip - C#
как сделать что бы при нажатие правый кнопки открылось (около мышки) Меню контекст..вот ниже у меня показана(ПОЧТИ) private void...

Как привязать DAO к VB 6.0? - Visual Basic
Как привязать DAO к VB 6.0? Говорят, что ADO работает с таблицами быстрее, чем технология DAO. Писал по компоненты ADO, регультат (по...

Как привязать приложение к ВК? - Программирование Android
Помогите пожалуйста,мне нужно что-бы приложение делало пост автоматически. Скиньте весь код если не трудно.

Как 'привязать' HScrollBar к Listbox'у? - Visual Basic
subj Чтобы скроллирование HScrollBar''а имело эффект на LisBox''е.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Yandex
Объявления
09.01.2014, 13:33
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru