2016-06-17 12 views
0

definiert I 4 Farben:Matlab gleicher Marker Farbe der Linie

color_green = [31 135 16] ./ 255; 
color_red = [244 56 47] ./ 255; 
color_light_blue = [23 222 230] ./ 255; 
color_purple = [192 4 247] ./ 255; 

und weil ich eine Menge von Zahlen, ich bin mit this function Ich mag die gleiche Linienfarbe für den Marker verwenden, . Ich versuchte so

line_fewer_markers(x,y1,30,'s','LineStyle', 'none', 'LineWidth', 2,'MarkerFaceColor','color_red'); 
plot(x,y2,'Color', color_red,'LineWidth',2); 

aber funktioniert nicht. Wenn ich color_red durch 'r' ersetze, wird das ganze Quadrat rot, während ich nur die Kante färben muss; und ich brauche das genaue Rot von color_red, weil ich diese Sache für andere Graphen mache. Wenn ich die Standardfarbe verwende, die Matlab gibt, funktioniert es. Aber ich kann diese Farben nicht benutzen.

Antwort

2

Sie passieren die Zeichenfolge'color_red' statt der Variablecolor_red zu line_fewer_markers.

line_fewer_markers(x,y1,30,'s', ... 
       'LineStyle', 'none', ... 
       'LineWidth', 2, ... 
       'MarkerFaceColor', color_red); %<---- Pass the VARIABLE not a string 

Auch Sie zum MarkerFaceColor Einstellung, die der Mittelteil des Markers ist. Sie möchten die MarkerFaceColor auf none setzen und stattdessen die MarkerEdgeColor einstellen.

line_fewer_markers(x,y1,30,'s', ... 
       'LineStyle', 'none', ... 
       'LineWidth', 2, ... 
       'MarkerFaceColor', 'none', ... %<-- Don't fill the markers 
       'MarkerEdgeColor', color_red); %<-- Set the EdgeColor 
+0

Mit 'function red_color = ...' sagt Funktionsdefinitionen sind in diesem Kontext nicht erlaubt. – Shika93

+2

@ Shika93 Warum schreibst du 'function red_color =' ?? Das erscheint nirgendwo in meinem Code. Auch es ist 'color_red' – Suever

+0

Sorry, ich habe nicht verstanden, dass ich '' MarkerEdgeColor ', color_red' am Ende des Codes setzen sollte. Jetzt funktioniert es. Vielen Dank! – Shika93

Verwandte Themen