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

It seems you have computed the Low and High values based on some stat.  You have a couple of options:

  • You can use the BARWIDTH option for TYPE=BAR.
  • You can use TYPE=LINE, and set the line thickness using LINEATTRS.
ammarhm
Lapis Lazuli | Level 10

 

 

 

Sorry again for bothering

Still having a problem with this

 

Here is what I am doing 

I am using discretattrmap to add the specific colour and shape

discreteattrmap name='colors' / ignorecase=true;
         value '1' / markerattrs=(color=blue symbol=squarefilled  );
         value '2' /  markerattrs=(color=blue symbol=square ) ;
		  value '3' / markerattrs=(color=viro symbol=diamondfilled);
     
      enddiscreteattrmap;
      discreteattrvar attrvar=classfill var=id attrmap='colors';

then the plot is created with the following code 

 

  highlowplot y=obsid low=low high=high / CLIPCAP=true; 
 scatterplot y=obsid x=mean / markersizeresponse=w markersizemin=10 markersizemax=30 group=classfill  ;

 

But

THe character in the middle of the OR line is not showing!

If i change the code to

 

 

 referenceline y=ref / lineattrs=(thickness=15 color=_bandcolor);
   highlowplot y=obsid low=low high=high / CLIPCAP=true; 
          scatterplot y=obsid x=mean / markerattrs=(symbol=squarefilled) group=classfill  ;

it will work perfectly but the symboles are all squares

 

if I change the code to 

 

 highlowplot y=obsid low=low high=high / CLIPCAP=true; 
          scatterplot y=obsid x=mean /  markersizeresponse=w markersizemin=10 markersizemax=30 group=classfill  ;

Then the boxes are resized according tot he column w but all the symboles are the same of course

 

 

THe problem arizes when I try to combine these two options:

 highlowplot y=obsid low=low high=high / CLIPCAP=true; 
          scatterplot y=obsid x=mean /  markersizeresponse=w markersizemin=10 markersizemax=30 group=classfill ;

Any idea on how to solve this? See attached image

Kind regards

 

 


pic.png
Jay54
Meteorite | Level 14

I will have to check with the experts for the interactions between MarkerSizeResponse and DiscreteAttrMap.  

 

In the meantime, if you are using DiscreteAttrMap only to control the shape of the symbols by group, I suggest you can just set the three symbols you want (in the right order) using the DATASYMBOLS option in BEGINGRAPH to see if that works.  Leave out the DiscreteAttrMap.  This will tell us if there is some interaction we need to consider.

 

If you can include the full program with working data (not confidential) that I can run, I will have a better shot to debug the issues.

SAS Innovate 2025: Register Now

Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
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.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 17 replies
  • 7139 views
  • 7 likes
  • 4 in conversation