BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
mcmaxwell
Fluorite | Level 6

Hello, 

I am making a simple bar graph (2 bars) and I would like each bar to be a different color. Below is the code I used to make the data set and the graph. 

data new;      
	length cPLTL $9 ;  
	input percent cPLTL @@;      
cards;      
2.19 cPLTL      
17.03 non-cPLTL       
;          
proc print data=new; run;    
   
proc sgplot data=new;        
	styleattrs datacolors=(cx66FF66 cxFF6666); 
	vbar cPLTL / response=percent groupdisplay=cluster barwidth=.4; 
	yaxis label="Percent of unsuccessful students";       
	xaxis display=(nolabel);              
	run;     

My issue is that the styleattrs command is not working. Can someone please show me what I am doing wrong? I would like to use the color naming system values to specify navy blue and bright orange, but I am aware that the colors in the code above don't specify that. I would also be open to learning a simpler way of assigning colors. 

Thanks!

1 ACCEPTED SOLUTION

Accepted Solutions
ballardw
Super User

@mcmaxwell wrote:

Hello, 

I am making a simple bar graph (2 bars) and I would like each bar to be a different color. Below is the code I used to make the data set and the graph. 

data new;      
	length cPLTL $9 ;  
	input percent cPLTL @@;      
cards;      
2.19 cPLTL      
17.03 non-cPLTL       
;          
proc print data=new; run;    
   
proc sgplot data=new;        
	styleattrs datacolors=(cx66FF66 cxFF6666); 
	vbar cPLTL / response=percent groupdisplay=cluster barwidth=.4; 
	yaxis label="Percent of unsuccessful students";       
	xaxis display=(nolabel);              
	run;     

My issue is that the styleattrs command is not working. Can someone please show me what I am doing wrong? I would like to use the color naming system values to specify navy blue and bright orange, but I am aware that the colors in the code above don't specify that. I would also be open to learning a simpler way of assigning colors. 

Thanks!


GROUPDISPLAY without a GROUP variable is hint as to what is not happening.

 

Add GROUP= cPLTL to the VBAR options to make each bar with a different color. 

Had nothing to do with the STYLEATTRS but missing group.

 

View solution in original post

1 REPLY 1
ballardw
Super User

@mcmaxwell wrote:

Hello, 

I am making a simple bar graph (2 bars) and I would like each bar to be a different color. Below is the code I used to make the data set and the graph. 

data new;      
	length cPLTL $9 ;  
	input percent cPLTL @@;      
cards;      
2.19 cPLTL      
17.03 non-cPLTL       
;          
proc print data=new; run;    
   
proc sgplot data=new;        
	styleattrs datacolors=(cx66FF66 cxFF6666); 
	vbar cPLTL / response=percent groupdisplay=cluster barwidth=.4; 
	yaxis label="Percent of unsuccessful students";       
	xaxis display=(nolabel);              
	run;     

My issue is that the styleattrs command is not working. Can someone please show me what I am doing wrong? I would like to use the color naming system values to specify navy blue and bright orange, but I am aware that the colors in the code above don't specify that. I would also be open to learning a simpler way of assigning colors. 

Thanks!


GROUPDISPLAY without a GROUP variable is hint as to what is not happening.

 

Add GROUP= cPLTL to the VBAR options to make each bar with a different color. 

Had nothing to do with the STYLEATTRS but missing group.

 

sas-innovate-2024.png

Available on demand!

Missed SAS Innovate Las Vegas? Watch all the action for free! View the keynotes, general sessions and 22 breakouts on demand.

 

Register now!

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 1 reply
  • 989 views
  • 0 likes
  • 2 in conversation