I am trying to display tick mark values on a log scale x-axis from 0.1 to 10000 where the 1000 and 10000 values are displayed with commas. Ideally I'd like the values displayed to be 0.1, 1, 10, 100, 1,000, and 10,000. I can adjust the value format in the xaxis statement to comma8.1, but this adds a decimal place to all the values (0.1, 1.0, 10.0, 100.0, 1,000.0, and 10,000.0). If I use a comma8. format the 0.1 value is displayed as 0 (0, 1, 10, 100, 1,000, and 10,000). See below my base code to generate the figures and the formats used to try and display commas. I'm using SAS 9.4 (TS1M5). - No value formatting: proc sgplot data=Serum noautolegend noborder; where PFAS="PFOS" and Home="A" and Participant=1 and Ave_Water_Conc>0; scatter x=Serum_Level y=PFAS/ markerattrs=(symbol=CircleFilled color=CX9c5596/*CX5e3c99*/ size=18); refline 2273.1 / axis=x lineattrs=(color=white thickness=0) label="Your result:_2273 ug/L" splitchar="_" splitjustify=center labelattrs=(family=calibri size=11 color=CX9c5596/*CX5e3c99*/ weight=bold) LABELLOC=outside LABELPOS=max; refline 14.6 / axis=x lineattrs=(pattern=solid color=CX5c98ca/*CXfdb863*/ thickness=5); /*"U.S._95%tile, total population, 2017-2018"*/ refline 23.5 / axis=x lineattrs=(pattern=solid color=CX86afb3/*CXb2abd2*/ thickness=5); /*"C8_study, Little Hocking OH, median, PFAS exchange"*/ refline 240 / axis=x lineattrs=(pattern=solid color=CX3e756d/*CXe66101*/ thickness=5); /*"Ronneby_study, GM, female, 61-70 yrs, Xu et al. Serum 2021"*/ xaxis type=log logstyle=logexpand logbase=10 values=(0.1 1 10 100 1000 10000) minor /*display=(nolabel)*/ label="Concentration (ug/L)" labelattrs=(family=calibri size=11) valueattrs=(family=Calibri size=11); yaxis labelattrs=(family=calibri size=11) valueattrs=(family=calibri size=11) display=(nolabel noline novalues noticks); run; - With valuesformat=Comma8.1: - With valuesformat=Comma8.: Any help would be greatly appreciated. Thank you.
... View more