Mercurial > repos > public > sbplib
annotate Color.m @ 1037:2d7ba44340d0 feature/burgers1d
Pass scheme specific parameters as cell array. This will enabale constructDiffOps to be more general. In addition, allow for schemes returning function handles as diffOps, which is currently how non-linear schemes such as Burgers1d are implemented.
author | Vidar Stiernström <vidar.stiernstrom@it.uu.se> |
---|---|
date | Fri, 18 Jan 2019 09:02:02 +0100 |
parents | ff745028d6bd |
children |
rev | line source |
---|---|
0 | 1 classdef Color |
2 properties(Constant) | |
3 blue = [0.000 0.447 0.741]; | |
4 red = [0.850 0.325 0.098]; | |
5 yellow = [0.929 0.694 0.125]; | |
6 purple = [0.494 0.184 0.556]; | |
7 green = [0.466 0.674 0.188]; | |
8 lightblue = [0.301 0.745 0.933]; | |
9 darkred = [0.635 0.078 0.184]; | |
37
1770689d6c31
Added black and white to Color.m
Jonatan Werpers <jonatan@werpers.com>
parents:
0
diff
changeset
|
10 black = [0.000 0.000 0.000]; |
1770689d6c31
Added black and white to Color.m
Jonatan Werpers <jonatan@werpers.com>
parents:
0
diff
changeset
|
11 white = [1.000 1.000 1.000]; |
436
51d818bc8915
Add a vector of all colors to Color
Jonatan Werpers <jonatan@werpers.com>
parents:
122
diff
changeset
|
12 colors = { Color.blue, Color.red, Color.yellow, Color.green, Color.purple, Color.lightblue, Color.darkred, Color.black, Color.white}; |
655
ff745028d6bd
Add some helpful properties to Color
Jonatan Werpers <jonatan@werpers.com>
parents:
458
diff
changeset
|
13 markers = {'+', 'o', '*', '.', 'x', 'square', 'diamond', 'v', '^', '>', '<', 'pentagram', 'hexagram'}; |
ff745028d6bd
Add some helpful properties to Color
Jonatan Werpers <jonatan@werpers.com>
parents:
458
diff
changeset
|
14 lineStyles = {'-', '--', ':', '-.'}; |
ff745028d6bd
Add some helpful properties to Color
Jonatan Werpers <jonatan@werpers.com>
parents:
458
diff
changeset
|
15 |
ff745028d6bd
Add some helpful properties to Color
Jonatan Werpers <jonatan@werpers.com>
parents:
458
diff
changeset
|
16 solidMarkers = {'o', 'square', 'diamond', 'v', 'pentagram', '^', '>', '<', 'hexagram'}; |
458
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
17 |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
18 notabilityYellow = [100.0 99.0 22.0 ]/100; |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
19 notabilityOrange = [97.0 61.0 15.0 ]/100; |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
20 notabilityRed = [92.0 22.0 18.0 ]/100; |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
21 |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
22 notabilityLightGreen = [67.0 99.0 22.0 ]/100; |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
23 notabilityGreen = [39.0 72.0 30.0 ]/100; |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
24 notabilityDarkGreen = [5.0 45.0 24.0 ]/100; |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
25 |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
26 notabilityLightBlue = [8.0 45.0 98.0 ]/100; |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
27 notabilityBlue = [11.0 30.0 69.0 ]/100; |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
28 notabilityDarkBlue = [7.0 5.0 46.0 ]/100; |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
29 |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
30 notabilityPink = [99.0 13.0 82.0 ]/100; |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
31 notabilityPurple = [64.0 11.0 77.0 ]/100; |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
32 notabilityDarkPurple = [38.0 19.0 56.0 ]/100; |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
33 |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
34 notabilityBrown = [58.0 40.0 22.0 ]/100; |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
35 notabilityGrey = [59.0 59.0 59.0 ]/100; |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
36 notabilityBlack = [0.0 0.0 0.0 ]/100; |
0 | 37 end |
122
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
38 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
39 methods(Static) |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
40 function sample() |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
41 % Filled and non-filled markers? |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
42 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
43 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
44 function showMarkers(x0, y0, lx, ly, color, filled) |
655
ff745028d6bd
Add some helpful properties to Color
Jonatan Werpers <jonatan@werpers.com>
parents:
458
diff
changeset
|
45 n = length(Color.markers); |
122
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
46 s = ceil(sqrt(n)); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
47 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
48 x = linspace(x0, x0 + lx, s); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
49 y = linspace(y0, y0 + ly, s); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
50 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
51 [X,Y] = meshgrid(x,y); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
52 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
53 for i = 1:n |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
54 lh = line(X(i),Y(i)); |
655
ff745028d6bd
Add some helpful properties to Color
Jonatan Werpers <jonatan@werpers.com>
parents:
458
diff
changeset
|
55 lh.Marker = Color.markers{i}; |
122
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
56 lh.MarkerSize = 12; |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
57 lh.Color = color; |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
58 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
59 if filled |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
60 lh.MarkerFaceColor = color; |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
61 end |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
62 end |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
63 end |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
64 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
65 function showColors(x0, y0, lx, ly) |
436
51d818bc8915
Add a vector of all colors to Color
Jonatan Werpers <jonatan@werpers.com>
parents:
122
diff
changeset
|
66 n = length(Color.colors); |
122
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
67 s = ceil(sqrt(n)); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
68 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
69 x = linspace(x0, x0 + lx, s); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
70 y = linspace(y0, y0 + ly, s); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
71 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
72 [X,Y] = meshgrid(x,y); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
73 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
74 for i = 1:n |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
75 lh = line(X(i),Y(i)); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
76 lh.Marker = 'o'; |
436
51d818bc8915
Add a vector of all colors to Color
Jonatan Werpers <jonatan@werpers.com>
parents:
122
diff
changeset
|
77 lh.MarkerFaceColor = Color.colors{i}; |
51d818bc8915
Add a vector of all colors to Color
Jonatan Werpers <jonatan@werpers.com>
parents:
122
diff
changeset
|
78 lh.Color = Color.colors{i}; |
122
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
79 lh.MarkerSize = 12; |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
80 end |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
81 end |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
82 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
83 function showLines(y0, ly, A, w) |
655
ff745028d6bd
Add some helpful properties to Color
Jonatan Werpers <jonatan@werpers.com>
parents:
458
diff
changeset
|
84 n = length(Color.lineStyles); |
122
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
85 x = linspace(0,1,100); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
86 y = linspace(y0, y0+ ly, n); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
87 for i = 1:n |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
88 lh = line(x, y(i) + A*sin(pi*x*w)); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
89 lh.LineWidth = 2; |
655
ff745028d6bd
Add some helpful properties to Color
Jonatan Werpers <jonatan@werpers.com>
parents:
458
diff
changeset
|
90 lh.LineStyle = Color.lineStyles{i}; |
122
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
91 end |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
92 end |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
93 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
94 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
95 fh = figure(); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
96 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
97 y0 = 0.1; |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
98 dl = 0.15; |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
99 margin = 0.07; |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
100 showMarkers( 0.1, y0, dl, dl, Color.blue, false); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
101 showMarkers( 0.9-dl, y0, dl, dl, Color.blue, true); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
102 showColors( 0.5-dl/2, y0, dl, dl); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
103 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
104 showLines(0.6, 0.2, 0.1, 5); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
105 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
106 xlim([0 1]) |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
107 ylim([0 1]) |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
108 axis square |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
109 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
110 end |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
111 end |
0 | 112 end |