-
Notifications
You must be signed in to change notification settings - Fork 0
/
iris.m
8142 lines (6702 loc) · 360 KB
/
iris.m
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
classdef iris < matlab.apps.AppBase
% Properties that correspond to app components
properties (Access = public)
GliomaIDHMutationDiagnosisToolUIFigure matlab.ui.Figure
MR_Spectroscopy matlab.ui.container.TabGroup
ManualEntryTab matlab.ui.container.Tab
ManualEntryPan matlab.ui.container.Panel
Classify matlab.ui.control.Button
EnterButton matlab.ui.control.Button
MetaboliteMenuDropDown matlab.ui.control.DropDown
Image2 matlab.ui.control.Image
EditField matlab.ui.control.EditField
ListBox matlab.ui.control.ListBox
Tree3 matlab.ui.container.Tree
modelsd matlab.ui.container.TreeNode
MetaboliteConcentrationEntryLabel matlab.ui.control.Label
Image9 matlab.ui.control.Image
BacktoMainMenuLabel matlab.ui.control.Label
ModelMetricsPanel matlab.ui.container.Panel
ListBox_2 matlab.ui.control.ListBox
Image8 matlab.ui.control.Image
Image8_2 matlab.ui.control.Image
Image8_3 matlab.ui.control.Image
AccuracyLabel matlab.ui.control.Label
SpecificityLabel matlab.ui.control.Label
SensitivityLabel matlab.ui.control.Label
NaNLabel matlab.ui.control.Label
NaNLabel_2 matlab.ui.control.Label
NaNLabel_3 matlab.ui.control.Label
Image15 matlab.ui.control.Image
ResultLabel matlab.ui.control.Label
NaNLabel_4 matlab.ui.control.Label
MainMenuPanel matlab.ui.container.Panel
ManualEntryButton matlab.ui.control.Button
ExcelEntryButton matlab.ui.control.Button
LCModelEntryButton matlab.ui.control.Button
PlotsButton matlab.ui.control.Button
ExcelEntryPanel matlab.ui.container.Panel
ButtonPanel matlab.ui.container.Panel
progressbar matlab.ui.control.UIAxes
LoadButton matlab.ui.control.Button
ClassifyButton matlab.ui.control.Button
ExportClassesButton matlab.ui.control.Button
Image10 matlab.ui.control.Image
BacktoMainMenuLabel_2 matlab.ui.control.Label
ProcessingLabel matlab.ui.control.Label
ModelsListBox_3Label matlab.ui.control.Label
ModelsListBox_3 matlab.ui.control.ListBox
LoadButton_4 matlab.ui.control.Button
UITableExcelEntry matlab.ui.control.Table
Class1Label matlab.ui.control.Label
Class2Label matlab.ui.control.Label
PlotsPanel matlab.ui.container.Panel
PlotsMenuPanel matlab.ui.container.Panel
ModelPlots matlab.ui.control.Button
LCMODELPLOTS matlab.ui.control.Button
ExcelPlots matlab.ui.control.Button
Image11 matlab.ui.control.Image
BacktoMainMenuLabel_3 matlab.ui.control.Label
plottingpanels1 matlab.ui.container.Panel
plottingpanels2 matlab.ui.container.Panel
ModelPlotsPanel matlab.ui.container.Panel
RefreshButton_2 matlab.ui.control.Button
PlotButton_3 matlab.ui.control.Button
ModelsListBoxLabel matlab.ui.control.Label
ModelsListBox matlab.ui.control.ListBox
Image12 matlab.ui.control.Image
Image12_2 matlab.ui.control.Image
BacktoMainMenuLabel_4 matlab.ui.control.Label
BacktopreviousMenuLabel matlab.ui.control.Label
LCModelPlotsPanel matlab.ui.container.Panel
LoadButton_2 matlab.ui.control.Button
PlotButton_4 matlab.ui.control.Button
Image13 matlab.ui.control.Image
Image13_2 matlab.ui.control.Image
BacktoMainMenuLabel_5 matlab.ui.control.Label
BacktoPreviousMenuLabel matlab.ui.control.Label
MetabolitesListBoxLabel matlab.ui.control.Label
MetabolitesListBox matlab.ui.control.ListBox
ExcelPlotPanel matlab.ui.container.Panel
TabGroup3 matlab.ui.container.TabGroup
DataTab matlab.ui.container.Tab
LoadButton_6 matlab.ui.control.Button
UITable4 matlab.ui.control.Table
AssignButton matlab.ui.control.Button
ListBox_5Label matlab.ui.control.Label
ListBox_5 matlab.ui.control.ListBox
GroupingFeatureLabel matlab.ui.control.Label
DropDown matlab.ui.control.DropDown
Image24 matlab.ui.control.Image
BacktoPlotsMenuLabel matlab.ui.control.Label
greenLabel matlab.ui.control.Label
blueLabel matlab.ui.control.Label
PlotsTab matlab.ui.container.Tab
excelpanel matlab.ui.container.Panel
Plot matlab.ui.control.Button
PlotsButtonGroup matlab.ui.container.ButtonGroup
VariablePlotButton_2 matlab.ui.control.ToggleButton
SpiderPlotButton_2 matlab.ui.control.ToggleButton
PCAPlotButton matlab.ui.control.ToggleButton
BoxPlotButton_2 matlab.ui.control.ToggleButton
BarPlotButton matlab.ui.control.ToggleButton
LinePlotButton matlab.ui.control.ToggleButton
ConfidenceIntervalCheckBox matlab.ui.control.CheckBox
ScatterCheckBox matlab.ui.control.CheckBox
CI matlab.ui.control.NumericEditField
MergeCheckBox_2 matlab.ui.control.CheckBox
CompactCheckBox matlab.ui.control.CheckBox
PCDimensionSpinnerLabel matlab.ui.control.Label
PCDimensionSpinner matlab.ui.control.Spinner
Feature1DropDownLabel matlab.ui.control.Label
Feature1DropDown matlab.ui.control.DropDown
Feature2DropDownLabel matlab.ui.control.Label
Feature2DropDown matlab.ui.control.DropDown
ResultsPanel matlab.ui.container.Panel
LCModelEntryPanel matlab.ui.container.Panel
LoadButton_3 matlab.ui.control.Button
ClassifyButton_2 matlab.ui.control.Button
ModelsListBox_2Label matlab.ui.control.Label
ModelsListBox_2 matlab.ui.control.ListBox
CoordFilesListBoxLabel matlab.ui.control.Label
CoordFilesListBox matlab.ui.control.ListBox
Image14 matlab.ui.control.Image
BacktoMainMenuLabel_6 matlab.ui.control.Label
MR_Diffusion matlab.ui.container.TabGroup
Tab_3 matlab.ui.container.Tab
Tab2_3 matlab.ui.container.Tab
Tree matlab.ui.container.Tree
NormalUserNode matlab.ui.container.TreeNode
MRSpectroscopyNode matlab.ui.container.TreeNode
MassSpectroscopyNode matlab.ui.container.TreeNode
AdvancedUserNode matlab.ui.container.TreeNode
AboutNode matlab.ui.container.TreeNode
AdvancedUser matlab.ui.container.TabGroup
TrainerTab matlab.ui.container.Tab
trainertab matlab.ui.container.TabGroup
VariablePlotsTab matlab.ui.container.Tab
trainerpanel matlab.ui.container.Panel
Variable1DropDownLabel matlab.ui.control.Label
Variable1DropDown matlab.ui.control.DropDown
Variable2DropDownLabel matlab.ui.control.Label
Variable2DropDown matlab.ui.control.DropDown
plots_2 matlab.ui.control.Button
PLOTSButtonGroup matlab.ui.container.ButtonGroup
VariablePlotButton matlab.ui.control.ToggleButton
SpiderPlotButton matlab.ui.control.ToggleButton
BoxPlotButton matlab.ui.control.ToggleButton
LinePlotButton_3 matlab.ui.control.ToggleButton
CompactCheckBox_3 matlab.ui.control.CheckBox
MeanSpiderCheckBox matlab.ui.control.CheckBox
MergeCheckBox matlab.ui.control.CheckBox
BarPlotButton_3 matlab.ui.control.ToggleButton
ScatterCheck matlab.ui.control.CheckBox
CISpinnerLabel matlab.ui.control.Label
CISpinner matlab.ui.control.Spinner
CheckBox matlab.ui.control.CheckBox
PCAPlotButton_3 matlab.ui.control.ToggleButton
DimensionSpinnerLabel matlab.ui.control.Label
DimensionSpinner matlab.ui.control.Spinner
Image16 matlab.ui.control.Image
BacktomainmenuLabel matlab.ui.control.Label
Image16_2 matlab.ui.control.Image
BacktopreviousmenuLabel matlab.ui.control.Label
ModelPlotsTab matlab.ui.container.Tab
Panel_2 matlab.ui.container.Panel
MODELSListBox_3Label matlab.ui.control.Label
MODELSListBox_3 matlab.ui.control.ListBox
RefreshButton matlab.ui.control.Button
PlotButton_2 matlab.ui.control.Button
TrainingPanel matlab.ui.container.Panel
KNN matlab.ui.container.Panel
Image5 matlab.ui.control.Image
WeightedKNNLabel matlab.ui.control.Label
CoarseKNNLabel matlab.ui.control.Label
Image5_5 matlab.ui.control.Image
fineknn matlab.ui.control.Image
FineKNNLabel matlab.ui.control.Label
fineknn_2 matlab.ui.control.Image
CubicKNNLabel matlab.ui.control.Label
fineknn_3 matlab.ui.control.Image
CosineKNNLabel matlab.ui.control.Label
SVM matlab.ui.container.Panel
linearsvm matlab.ui.control.Image
LinearSVMLabel matlab.ui.control.Label
QuadraticSVMLabel matlab.ui.control.Label
quadraticsvm matlab.ui.control.Image
Image5_4 matlab.ui.control.Image
CubicSVMLabel matlab.ui.control.Label
Image5_6 matlab.ui.control.Image
FineGaussianSVMLabel matlab.ui.control.Label
Image5_7 matlab.ui.control.Image
MediumGaussianSVMLabel matlab.ui.control.Label
Forest matlab.ui.container.Panel
CoarseTree matlab.ui.control.Image
MediumTree matlab.ui.control.Image
MediumTreeLabel matlab.ui.control.Label
CoarseTreeLabel matlab.ui.control.Label
CoarseTree_2 matlab.ui.control.Image
FineTreeLabel matlab.ui.control.Label
Ensemble matlab.ui.container.Panel
BoostedTrees matlab.ui.control.Image
BoostedTreesLabel matlab.ui.control.Label
BaggedTree matlab.ui.control.Image
BaggedTreesLabel matlab.ui.control.Label
Discriminant matlab.ui.control.Image
DiscriminantLabel matlab.ui.control.Label
RUSB matlab.ui.control.Image
RUSBoostedLabel matlab.ui.control.Label
KFoldCrossValidationLabel matlab.ui.control.Label
Image18 matlab.ui.control.Image
Spinner matlab.ui.control.Spinner
Image18_2 matlab.ui.control.Image
Image19 matlab.ui.control.Image
BacktoMainMenuLabel_8 matlab.ui.control.Label
Image19_2 matlab.ui.control.Image
BacktoPreviousMenuLabel_2 matlab.ui.control.Label
HoldOutSliderLabel matlab.ui.control.Label
HoldOutSlider matlab.ui.control.Slider
RunAllButton matlab.ui.control.Button
SyntheticDataButton matlab.ui.control.Button
RankFeaturesButton matlab.ui.control.Button
ListBox_6 matlab.ui.control.ListBox
FeaturesRankDescendingOrderLabel matlab.ui.control.Label
SelectasPredictorsButton matlab.ui.control.Button
SelectedFeaturesLabel matlab.ui.control.Label
SequentialFeatureSelectionButton matlab.ui.control.Button
RunsSpinner matlab.ui.control.Spinner
RunsSpinnerLabel matlab.ui.control.Label
ReportTrainer matlab.ui.container.Panel
ReportAll matlab.ui.control.Button
AdvancedMenuPanel matlab.ui.container.Panel
UITable2 matlab.ui.control.Table
Panel_3 matlab.ui.container.Panel
RESPONSEListBoxLabel matlab.ui.control.Label
RESPONSEListBox matlab.ui.control.ListBox
trainer32 matlab.ui.control.Button
PREDICTORSListBoxLabel matlab.ui.control.Label
PREDICTORSListBox matlab.ui.control.ListBox
TrainerLoad matlab.ui.control.Button
predictor matlab.ui.control.Button
plots_3 matlab.ui.control.Button
Image17 matlab.ui.control.Image
BacktoMainMenuLabel_7 matlab.ui.control.Label
ResponseDropDownLabel matlab.ui.control.Label
ResponseDropDown matlab.ui.control.DropDown
ApplyCRLBThresholdMRSpectroscopyButton matlab.ui.control.Button
Selectsubtab matlab.ui.control.Button
statisticaltests matlab.ui.control.Button
PredictorsLabel matlab.ui.control.Label
ResponseLabel matlab.ui.control.Label
UITable5 matlab.ui.control.Table
ModelParametersPanel matlab.ui.container.Panel
Tree2 matlab.ui.container.Tree
models2 matlab.ui.container.TreeNode
Node2 matlab.ui.container.TreeNode
advancedList matlab.ui.control.ListBox
advancedPlot matlab.ui.control.Button
SubplotCheckBox matlab.ui.control.CheckBox
advancedPanel matlab.ui.container.Panel
Image22 matlab.ui.control.Image
BacktoMainMenuLabel_11 matlab.ui.control.Label
advancedPlot_2 matlab.ui.control.Button
ListBox_10 matlab.ui.control.ListBox
MainMenuPanel_2 matlab.ui.container.Panel
TrainNewModelButton matlab.ui.control.Button
TrainedModelsButton matlab.ui.control.Button
PlotsButton_2 matlab.ui.control.Button
Image20 matlab.ui.control.Image
ClicktoLoadDataLabel matlab.ui.control.Label
BacktoMainMenuLabel_9 matlab.ui.control.Label
Image20_2 matlab.ui.control.Image
modelsPlotALLadvanced matlab.ui.container.Panel
modelsplotpaneladvanced matlab.ui.container.Panel
RefreshButton_3 matlab.ui.control.Button
PlotButton_5 matlab.ui.control.Button
Image25 matlab.ui.control.Image
BacktoMainMenuLabel_13 matlab.ui.control.Label
ModelsListBox_4Label matlab.ui.control.Label
ModelsListBox_4 matlab.ui.control.ListBox
Panel_5 matlab.ui.container.Panel
load_html matlab.ui.control.HTML
Classifier matlab.ui.container.Tab
ClassifierMainPanel matlab.ui.container.Panel
Image21 matlab.ui.control.Image
TableEntryLabel matlab.ui.control.Label
Image21_2 matlab.ui.control.Image
SingleDataPointEntryLabel matlab.ui.control.Label
load_table matlab.ui.control.HTML
load_single matlab.ui.control.HTML
ExcelEntry matlab.ui.container.Panel
UITable3 matlab.ui.control.Table
LoadButton_5 matlab.ui.control.Button
MODELSListBox_4Label matlab.ui.control.Label
MODELSListBox_4 matlab.ui.control.ListBox
ClassifyButton_3 matlab.ui.control.Button
ExportClassesButton_2 matlab.ui.control.Button
Image23 matlab.ui.control.Image
BacktoMainMenuLabel_12 matlab.ui.control.Label
Label_13 matlab.ui.control.Label
Class2Label_2 matlab.ui.control.Label
Label_11 matlab.ui.control.Label
ExportClassesButton_4 matlab.ui.control.Button
classes_res matlab.ui.control.HTML
ManualPanel matlab.ui.container.Panel
Classify_2 matlab.ui.control.Button
EnterButton_2 matlab.ui.control.Button
MetaboliteMenuDropDown_2 matlab.ui.control.DropDown
EditField_2 matlab.ui.control.EditField
ListBox_3 matlab.ui.control.ListBox
Tree3_2 matlab.ui.container.Tree
modelsd_2 matlab.ui.container.TreeNode
PredictorsLabel_2 matlab.ui.control.Label
Image9_2 matlab.ui.control.Image
BacktoMainMenuLabel_10 matlab.ui.control.Label
ModelMetricsPanel_2 matlab.ui.container.Panel
ListBox_4 matlab.ui.control.ListBox
Image8_4 matlab.ui.control.Image
Image8_5 matlab.ui.control.Image
Image8_6 matlab.ui.control.Image
AccuracyLabel_2 matlab.ui.control.Label
SpecificityLabel_2 matlab.ui.control.Label
SensitivityLabel_2 matlab.ui.control.Label
NaNLabel_5 matlab.ui.control.Label
NaNLabel_6 matlab.ui.control.Label
NaNLabel_7 matlab.ui.control.Label
Image15_2 matlab.ui.control.Image
ResultLabel_2 matlab.ui.control.Label
NaNLabel_8 matlab.ui.control.Label
About matlab.ui.container.TabGroup
AcknowledgementsTab matlab.ui.container.Tab
Label matlab.ui.control.Label
Image4 matlab.ui.control.Image
Image4_2 matlab.ui.control.Image
ProjectTeamTab matlab.ui.container.Tab
Image3 matlab.ui.control.Image
PublicationsTab matlab.ui.container.Tab
PublicationsLabel matlab.ui.control.Label
Label_2 matlab.ui.control.Label
Label_3 matlab.ui.control.Label
Label_4 matlab.ui.control.Label
Label_5 matlab.ui.control.Label
Label_6 matlab.ui.control.Label
Label_7 matlab.ui.control.Label
Label_8 matlab.ui.control.Label
Label_9 matlab.ui.control.Label
Label_10 matlab.ui.control.Label
MassSpectroscopy matlab.ui.container.TabGroup
MassSpectroscopyTab matlab.ui.container.Tab
ManualEntryPan_2 matlab.ui.container.Panel
Classify_3 matlab.ui.control.Button
EnterButton_3 matlab.ui.control.Button
MetaboliteMenuDropDown_3 matlab.ui.control.DropDown
Image2_2 matlab.ui.control.Image
EditField_3 matlab.ui.control.EditField
ListBox_7 matlab.ui.control.ListBox
Tree3_3 matlab.ui.container.Tree
modelsd_3 matlab.ui.container.TreeNode
MetaboliteConcentrationEntryLabel_2 matlab.ui.control.Label
Image9_3 matlab.ui.control.Image
BacktoMainMenuLabel_14 matlab.ui.control.Label
ModelMetricsPanel_3 matlab.ui.container.Panel
ListBox_8 matlab.ui.control.ListBox
Image8_7 matlab.ui.control.Image
Image8_8 matlab.ui.control.Image
Image8_9 matlab.ui.control.Image
AccuracyLabel_3 matlab.ui.control.Label
SpecificityLabel_3 matlab.ui.control.Label
SensitivityLabel_3 matlab.ui.control.Label
NaNLabel_9 matlab.ui.control.Label
NaNLabel_10 matlab.ui.control.Label
NaNLabel_11 matlab.ui.control.Label
Image15_3 matlab.ui.control.Image
ResultLabel_3 matlab.ui.control.Label
NaNLabel_12 matlab.ui.control.Label
MainMenuPanel_3 matlab.ui.container.Panel
ManualEntryButton_2 matlab.ui.control.Button
ExcelEntryButton_2 matlab.ui.control.Button
PlotsButton_3 matlab.ui.control.Button
ExcelEntryPanel_2 matlab.ui.container.Panel
ButtonPanel_2 matlab.ui.container.Panel
progressbar_2 matlab.ui.control.UIAxes
LoadButton_7 matlab.ui.control.Button
ClassifyButton_4 matlab.ui.control.Button
ExportClassesButton_3 matlab.ui.control.Button
Image10_2 matlab.ui.control.Image
BacktoMainMenuLabel_15 matlab.ui.control.Label
ProcessingLabel_2 matlab.ui.control.Label
ModelsListBox_5Label matlab.ui.control.Label
ModelsListBox_5 matlab.ui.control.ListBox
LoadButton_8 matlab.ui.control.Button
UITableExcelEntry_2 matlab.ui.control.Table
Label_12 matlab.ui.control.Label
Class2Label_3 matlab.ui.control.Label
PlotsPanel_2 matlab.ui.container.Panel
PlotsMenuPanel_2 matlab.ui.container.Panel
ModelPlots_2 matlab.ui.control.Button
LCMODELPLOTS_2 matlab.ui.control.Button
ExcelPlots_2 matlab.ui.control.Button
Image11_2 matlab.ui.control.Image
BacktoMainMenuLabel_16 matlab.ui.control.Label
plottingpanels1_2 matlab.ui.container.Panel
plottingpanels2_2 matlab.ui.container.Panel
ModelPlotsPanel_2 matlab.ui.container.Panel
RefreshButton_4 matlab.ui.control.Button
PlotButton_6 matlab.ui.control.Button
ModelsListBox_6Label matlab.ui.control.Label
ModelsListBox_6 matlab.ui.control.ListBox
Image12_3 matlab.ui.control.Image
Image12_4 matlab.ui.control.Image
BacktoMainMenuLabel_17 matlab.ui.control.Label
BacktopreviousMenuLabel_2 matlab.ui.control.Label
LCModelPlotsPanel_2 matlab.ui.container.Panel
LoadButton_9 matlab.ui.control.Button
PlotButton_7 matlab.ui.control.Button
Image13_3 matlab.ui.control.Image
Image13_4 matlab.ui.control.Image
BacktoMainMenuLabel_18 matlab.ui.control.Label
BacktoPreviousMenuLabel_3 matlab.ui.control.Label
MetabolitesListBox_2Label matlab.ui.control.Label
MetabolitesListBox_2 matlab.ui.control.ListBox
ExcelPlotPanel_2 matlab.ui.container.Panel
TabGroup3_2 matlab.ui.container.TabGroup
DataTab_2 matlab.ui.container.Tab
LoadButton_10 matlab.ui.control.Button
UITable4_2 matlab.ui.control.Table
AssignButton_2 matlab.ui.control.Button
ListBox_5Label_2 matlab.ui.control.Label
ListBox_9 matlab.ui.control.ListBox
GroupingFeatureLabel_2 matlab.ui.control.Label
DropDown_2 matlab.ui.control.DropDown
Image24_2 matlab.ui.control.Image
BacktoPlotsMenuLabel_2 matlab.ui.control.Label
greenLabel_2 matlab.ui.control.Label
blueLabel_2 matlab.ui.control.Label
PlotsTab_2 matlab.ui.container.Tab
excelpanel_2 matlab.ui.container.Panel
Plot_2 matlab.ui.control.Button
PlotsButtonGroup_2 matlab.ui.container.ButtonGroup
VariablePlotButton_3 matlab.ui.control.ToggleButton
SpiderPlotButton_3 matlab.ui.control.ToggleButton
PCAPlotButton_2 matlab.ui.control.ToggleButton
BoxPlotButton_3 matlab.ui.control.ToggleButton
BarPlotButton_2 matlab.ui.control.ToggleButton
LinePlotButton_2 matlab.ui.control.ToggleButton
ConfidenceIntervalCheckBox_2 matlab.ui.control.CheckBox
ScatterCheckBox_2 matlab.ui.control.CheckBox
CI_2 matlab.ui.control.NumericEditField
MergeCheckBox_3 matlab.ui.control.CheckBox
CompactCheckBox_2 matlab.ui.control.CheckBox
PCDimensionSpinner_2Label matlab.ui.control.Label
PCDimensionSpinner_2 matlab.ui.control.Spinner
Feature1DropDown_2Label matlab.ui.control.Label
Feature1DropDown_2 matlab.ui.control.DropDown
Feature2DropDown_2Label matlab.ui.control.Label
Feature2DropDown_2 matlab.ui.control.DropDown
ResultsPanel_2 matlab.ui.container.Panel
Image26 matlab.ui.control.Image
Panel_6 matlab.ui.container.Panel
UserManualLabel matlab.ui.control.Label
sidebar_html matlab.ui.control.HTML
HTML matlab.ui.control.HTML
HTML2 matlab.ui.control.HTML
end
properties (Access = private)
tabledata,metabs,corrMatrix,sp,bg,fit,coord_filename;
indices;
net;
net2;
net3;
manualControl;
IDHIndices;
TERTIndices;
DoubleIndices;
VAL=[9,12,13,14,33];
manualValues;
ax;
ax2; % Description
position; % Description
% Description
pt_axis; % Description
% Description
trainerCount=0;
% Description
trainerResp;
% Description
trainerPredictors; % Description
models=struct; % Description
Defmodels; % Description
TrueClass=[]; % Description
row; % Description
excelPredictors; % Description
excelResp; % Excel Response
DefMassmodels; % It is the struct that stores default mass models
plottype=0; % Plot type is the MASS/MR Spectroscopy shifting
featureselection; % Last applied feature selection
confirmedSelection; % Confirmed Selection
Features; % Description
% Description
outAll={}; %All reports merged together
variablesOut; % Description
iterations={}; %Iterat˙on counter
groups={} %Iterat˙on groups
groupSz={} % Iterat˙on groupsize
% Description
% Description
subindices; % This is for subselection at advanced user
% Description
manual % Description
end
properties (Access = public)
deen="aasd" % Description
reqVars;
crlb=-1;
reqVars2;
auto=0;
automodels; % Description
out; % reported table which is generated from run all process
currentModel; % Lastly trained model
end
methods (Access = public)
function vargout=radarPlot(app,P,axis2, varargin )
%%% Get the number of dimensions and points
[M, N] = size(P);
%%% Plot the axes
% Radial offset per axis
th = (2*pi/M)*(ones(2,1)*(M:-1:1));
% Axis start and end
r = [0;1]*ones(1,M);
% Conversion to cartesian coordinates to plot using regular plot.
[x,y] = pol2cart(th, r);
% hLine = line(axis2,x, y,...
% 'LineWidth', 1.5,...
% 'Color', [1, 1, 1]*0.5 );
% for i = 1:numel(hLine)
% set(get(get(hLine(i),'Annotation'),'LegendInformation'),...
% 'IconDisplayStyle','off'); % Exclude line from legend
% end
toggle = ~ishold;
if toggle
hold on
end
%%% Plot axes isocurves
% Radial offset per axis
th = (2*pi/M)*(ones(9,1)*(M:-1:1));
% Axis start and end
r = (linspace(0.1, 0.9, 9)')*ones(1,M);
% Conversion to cartesian coordinates to plot using regular plot.
[x,y] = pol2cart(th, r);
% hLine = line(axis2,[x, x(:,1)]', [y, y(:,1)]',...
% 'LineWidth', 1,...
% 'Color', [1, 1, 1]*0.5 );
% for i = 1:numel(hLine)
% set(get(get(hLine(i),'Annotation'),'LegendInformation'),...
% 'IconDisplayStyle','off'); % Exclude line from legend
% end
%%% Insert axis labels
% Compute minimum and maximum per axis
minV = min(P,[],2);
maxV = max(P,[],2);
for j = 1:M
% Generate the axis label
msg = sprintf('x{%d} = %5.2f ... %5.2f',...
j, minV(j), maxV(j));
[mx, my] = pol2cart( th(1, j), 1.1);
text(axis2,mx, my, msg);
end
axis([-1,1,-1,1]*1.5)
% Hold on to plot data points
hold on
% Radius
R = 0.8*((P - (minV*ones(1,N)))./((maxV-minV)*ones(1,N))) + 0.1;
R = [R; R(1,:)];
Th = (2*pi/M) * ((M:-1:0)'*ones(1,N));
% polar(Th, R)
[X, Y] = pol2cart(Th, R);
h = plot(axis2,X, Y);
axis([-1,1,-1,1]);
axis square;
axis off;
if toggle
hold off
end
if nargout > 0
varargout{1} = h;
end
end
function [tabledata,metabs,corrMatrix,sp,bg,fit,coord_filename]= load_lcmodel(app)
[file,folder] = uigetfile('*.coord','MultiSelect',"on");
file=cellstr(string(file));
folder=cellstr(string(folder));
for i=1:length(file)
%dirs=dir([folder '\*'])
%irs=dirs((~[dirs(:).isdir]))
splitted=strsplit((file{i}),'.coord');
%directories=strsplit([dirs(1).folder filesep dirs(1).name],'.coord')
%x=zeros(1,272), x(1:2:end)=1, x2=vec2mat(x,17),x3=x2(1:16,1:16)
mainText=[folder{:} filesep splitted{1}];
%dirs=dir([folder,'\1\35ms\sl' int2str(x(1,i)) '_' int2str(x(2,i)) '-' int2str(x(3,i)) '.coord'])
figurelist=''; % Define patient protocol numbers
%vox_name=sprintf('sl1_%d-%d',slx,sly);
%vox={vox_name};
PID=(figurelist);
%voxname=char(vox(m));
%cd(PID);
% coord_filename=strcat(PID,'.coord');
% output_filename=strcat(PID,'.print');
coord_filename{i}=[mainText '.coord'];
output_filename=strcat(mainText,'.print');
% Read metabolite details and correlation coefficients table
[metabs{i},corrMatrix{i}]=io_loadlcmdetail(output_filename);
[bg{i}]=io_readlcmcoord_getBackground(coord_filename{i},'bg');
ppm=bg{i}.ppm;
ind=1;
[fit{i}]=io_readlcmcoord_getBackground(coord_filename{i},'fit');
fit{i}.specs=fit{i}.specs-bg{i}.specs;
[sp{i}]=io_readlcmcoord_getBackground(coord_filename{i},'sp');
tabledata{i}=mrs_readLcmodelTABLE(strcat(mainText,'.table'));
%table_res{1,tot_vox}=tabledata;
%%
% Create a line plot of all metabolites minus the background
%figx=figure('units','centimeters','outerposition',[0 0 50 30]);
end
end
function results = axClick(app,varargin)
if varargin{2}.Button==3
answer = questdlg('Choose the process', ...
'Processes', ...
'Title Changes','Zoom In','More..','Zoom In');
% Handle response
switch answer
case 'Title Changes'
app.titleChange(varargin{1});
case 'Zoom In'
app.zoomInOut(answer,varargin{1});
case 'More..'
plotMa(varargin{1},'EditType','Advanced')
%app.export(varargin{1});
end
else
end
end
function results = RestoreZoom(app,varargin)
if varargin{2}.Button==3
answer = questdlg('Choose the process', ...
'Processes', ...
'Title Changes','Zoom Out','More..','Zoom Out');
% Handle response
switch answer
case 'Title Changes'
app.titleChange(varargin{1});
case 'Zoom Out'
app.zoomInOut(answer,varargin{1});
case 'More..'
plotMa(varargin{1},'EditType','Advanced')
end
end
end
function results = titleChange(app,varargin)
xx = inputdlg({'Axes Title','X Title','Y Title'},...
'Titles', [1 50; 1 50; 1 50]);
varargin{1}.Title.String=[ xx{1}];
varargin{1}.XLabel.String=[ xx{2}];
varargin{1}.YLabel.String=[ xx{3}];
varargin{1}.Title.ButtonDownFcn=@textHandler;
varargin{1}.XLabel.ButtonDownFcn=@textHandler;
varargin{1}.YLabel.ButtonDownFcn=@textHandler;
end
function results = zoomInOut(app,answer,varargin)
varargin{1}
switch answer
case "Zoom Out"
for a=1:length(app.ax)
try
set(app.ax{a},'OuterPosition',app.position{a});
catch
app.ax
app.position
set(app.ax,'OuterPosition',app.position);
end
end
varargin{1}[email protected];
case "Zoom In"
for a=1:length(app.ax)
set( app.ax{a},'OuterPosition',[0 0 0 0]);
end
set( varargin{1},'OuterPosition',[0 0 1 1]);
varargin{1}[email protected];
end
end
function results = export(app,varargin)
xx = inputdlg({'Export Quality','Filename'},...
'Titles', [1 50; 1 50]);
f=waitbar(0.2,"Exporting");
exportgraphics(varargin{1},xx{2},'ContentType','vector','BackgroundColor','none', 'Resolution',str2num(xx{1}))
waitbar(1,f,"Finished!");
pause(0.5);
close(f);
end
function results = plotSpectra(app,modplot,i,ppm,linewidth,ax,color,FontSize,varargin)
app.pt_axis=0;
ind=1;
modplot=sort(modplot);
for n=modplot
outArr=[]
if n>3
% Tekrar okumas˙na gerek yok bunu tersten al
vars=strsplit(app.MetabolitesListBox.Items{n},'+')
for ik=1:length(vars)
[buff]=io_readlcmcoord(app.coord_filename{i},vars{ik}); %Graph of the specific metabolite is taken from coordfile(Ex: Only Glu graph from coord file)
if ~isempty(buff.specs)
outArr(ik,:)=buff.specs
end
end
out.ppm=buff.ppm
out.specs=sum(outArr,1)
if ~isempty(out.specs)
spectra_all(ind,:)=out.specs';
legendtext{ind}=[ strcat(strjoin(string(app.MetabolitesListBox.Items{n})),'-','SD:',num2str(app.tabledata{i}.SDpct(n-3)),'%')];
a=spectra_all(ind,:)-app.bg{i}.specs';
b1(ind)=plot(ax,fliplr(ppm),fliplr(a)+app.pt_axis,'LineWidth',linewidth,"Color",color);
t=text(app.ax{i},ppm(1)*1.01,a(end)+app.pt_axis, legendtext{ind},"Color",color,"FontSize",FontSize,'VerticalAlignment','middle');
set(t,'FontSize',FontSize)
ds=t.FontSize;
t.ButtonDownFcn=@textHandler;
app.pt_axis=app.pt_axis-ds*6;
ind=ind+1;
hold (ax,"on")
else
legendtext{ind}=[strcat(strjoin(string(app.MetabolitesListBox.Items{n})),'-','SD:',num2str(app.tabledata{i}.SDpct(n-3)),'%')];
%app.pt_axis=app.pt_axis+min(app.pt_axis*0.1,-5);
b1(ind)=plot(ax,ppm, ones(size(ppm)).*app.pt_axis,'LineWidth',linewidth,"Color",color);
t=text(app.ax{i},ppm(1)*1.01,app.pt_axis, legendtext{ind},"Color",color,"FontSize",FontSize,'VerticalAlignment','middle');
t.ButtonDownFcn=@textHandler;
set(t,'FontSize',FontSize)
ds=t.FontSize;
app.pt_axis=app.pt_axis-ds*6;
ind=ind+1;
hold (ax,"on")
end
elseif n<=3
cs={'sp{i}','bg{i}','fit{i}'};
legends={'In Vivo','Baseline','Fit'};
x=eval(['app.' cs{n}]);
b1(ind)=plot(ax,fliplr(ppm),fliplr(x.specs')+app.pt_axis,'LineWidth',linewidth,"Color",color);
t=text(app.ax{i},ppm(1)*1.01,x.specs(end)+app.pt_axis, legends{n},"Color",color,"FontSize",FontSize,'VerticalAlignment','middle');
ds=t.FontSize;
t.ButtonDownFcn=@textHandler;
set(t,'FontSize',FontSize)
app.pt_axis=app.pt_axis-ds*2;
legendtext{ind}=string(legends{n});
ind=ind+1;
hold (ax,"on");
end
end
set(ax,'Color',[1,1,1]);
finalt=strsplit(string(app.coord_filename{i}),filesep );
title(ax,['\color{black}' finalt{end}]);
set(ax,'ytick',[]);
set(ax,'yticklabel',[ppm(end):ppm(1)]);
set(ax,'xtick',ppm(1)-fliplr([0.5,1,1.5,2,2.5,3,3.5])+ppm(end));
set(ax,'XColor',color);
xtickangle(ax,45)
%set(ax,'XTickRotate')
dsc=[0.5,1,1.5,2,2.5,3,3.5]%round(linspace(ppm(end),ppm(1),7)-0.01,2);
cx=strsplit(sprintf("%.2f ",fliplr(dsc))," ");
set(ax,'xticklabel',cx);
set(ax,'box','off');
%set(ax,'ticklength',[0,0])
xlim(ax,[ppm(end),ppm(1)*1.25]);
ylim(ax,'auto');
ax.XLabel.String="Chemical Shift (ppm)";
ax.XLabel.Color=[0,0,0];
ax.Title.ButtonDownFcn=@textHandler;
ax.XLabel.ButtonDownFcn=@textHandler;
pos=get(ax,'Position');
set(ax,'Position',[pos([1,2]) pos(3)/1.5 pos(4)])
xc=get(ax,'xlim');
yc=get(ax,'ylim');
%ax.XLabel.Position=[pos(1)+(xc(2))/2,pos(2)-yc(2)];
ax.XLabel.ButtonDownFcn=@textHandler;
set(ax.Title,'ButtonDownFcn',@textHandler);
app.position{i}=ax.OuterPosition;
hold (ax,'off');
results=get(ax,'ylim')
end
end
% Callbacks that handle component events
methods (Access = private)
% Code that executes after component creation
function startupFcn(app)
%app.GliomaIDHMutationDiagnosisToolUIFigure.WindowStyle = 'docked';
%set(app.GliomaIDHMutationDiagnosisToolUIFigure,'Icon','anita.ico')
app.HTML.HTMLSource='usermanual.html'
app.load_html.HTMLSource='load.html'
app.load_table.HTMLSource='load_class.html'
app.sidebar_html.HTMLSource='sidebar.html'
app.load_single.HTMLSource='load_class_single.html'
models=txtmodelReader('open','modelsLog.txt');
for i=models
try
bufm=load ([i{1}]);
ky=strsplit(i{1},{'/','\','.'});
ky=ky{end-1};
app.models.(ky)=bufm.model;
disp([i{1} '.mat file is founded in the directory and added to models'])
catch
disp([i{1} '.mat file is NOT founded in the directory!' ])
end
end
Defmodels=txtmodelReader('open','path','DefaultModelsLog.txt');
for i=Defmodels
try
Pre_CRC=i{1};
bufm=load ([i{1} '.mat']);
app.Defmodels.(Pre_CRC)=bufm.model;
disp([i{1} '.mat file is founded in the directory and added to models'])
catch
disp([i{1} '.mat file is NOT founded in the directory!' ])
end
end
DefMassmodels=txtmodelReader('open','path','DefaultMassModels.txt');
for i=DefMassmodels
try
Pre_CRC=i{1};
bufm=load ([i{1} '.mat']);
app.DefMassmodels.(Pre_CRC)=bufm.model;
disp([i{1} '.mat file is founded in the directory and added to models'])
catch
disp([i{1} '.mat file is NOT founded in the directory!' ])
end
end
end
% Callback function
function ShowButtPushed(app, event)
app.indices;
if app.UITable.Visible=="on";
app.UITable.Visible=false;
app.Button_5.Visible=true;
app.ReportPanel.Visible="off";
else
app.UITable.Visible=true;
app.Button_5.Visible=false;
app.ReportPanel.Visible="off";
end
end
% Callback function
function LoadButtPushed2(app, event)
[a,b]=uigetfile({'*.xlsx;*.xls;*.csv','Excel files (*.xlsx,*.csv)'});
if a==0
return ;
end
removeStyle(app.UITable)
a=readtable([b filesep a],'ReadVariableNames',true);
app.UITable.Data=a;
set(app.UITable, 'ColumnName',a.Properties.VariableNames);
app.indices;
if app.UITable.Visible=="on"
app.UITable.Visible=false;
app.Button_5.Visible=true;
app.ReportPanel.Visible="off";
else