BookmarkSubscribeRSS Feed
Minki
Calcite | Level 5

With the following (example) code a picture is created which looks fine if using IMAGE_DPI=100 in the ODS LISTING (see graph1.pdf). But if using IMAGE_DPI=1200 (what is needed by customer) the symbols are displayed in a very light shade (nearly invisible) which could not be acceptable (see graph2.pdf). Any ideas how to solve this? Thanks for any ideas or hints!

SAS code:

 

data test;

  input avg diff sgrpdc count_score;

  cards;

2 0 1 1

5 -1 1 1

12 2.5 1 2

18 1.2 1 1

20 -3 1 3

20 -1 1 1

23 3.5 1 2

25 -4 1 1

27 2.1 1 2

33 0.4 1 4

3 1.1 2 1

6 -1 2 2

12 0.5 2 1

15 -1.2 2 2

18 -3 2 1

20 -1 2 1

24 0.5 2 1

26 -4 2 1

 ;

run;

 

proc template;

  define style styles.mypng;

  parent=styles.listing;

  style GraphData1 from GraphData1 / color=black contrastcolor=black linestyle=1

        markersymbol='plus';

  style GraphData2 from GraphData2 / color=black contrastcolor=black linestyle=1

        markersymbol='circle';

  style GraphOutlines from GraphOutlines / color=black contrastcolor=black linestyle=1                 
               linethickness=4pt;

  end;

  define statgraph sgdesign;

  begingraph;

    entrytitle "Score for Cystic Fibrosis and COPD subjects p=0.xxxx";

      layout overlay / yaxisopts=(label="Within Subject Difference (V2 - V1)#in score"

         labelattrs=(size=8) labelfitpolicy=splitalways labelsplitchar='#' labelsplitchardrop=true

         linearopts=(viewmin=-6 viewmax=8 minorticks=true

         minortickcount=4 tickvaluesequence=(start=-6 end=8 increment=2)))

         xaxisopts=(label="Within Subject Average (V1 and V2) in Score"

         labelattrs=(size=8) linearopts=(viewmin=0 viewmax=40

         tickvaluesequence=(start=0 end=40 increment=10)));

      scatterplot x=avg y=diff / group=sgrpdc

                 name='scatter' markersizeresponse=count_score;

      referenceline y=1 / lineattrs=(color=black) curvelabel="Mean:mw" curvelabelposition=max

               curvelabellocation=outside curvelabelsplitchar='#' curvelabelsplitchardrop=true

               curvelabelsplit=true curvelabelattrs=(color=black size=6);

      referenceline y=3 / lineattrs=(color=black pattern=shortdash) curvelabel="+1.96SD:sd"

               curvelabelposition=max curvelabellocation=outside curvelabelsplitchar='#'

               curvelabelsplitchardrop=true curvelabelsplit=true curvelabelattrs=(color=black size=6);

      referenceline y=-2 / lineattrs=(color=black pattern=shortdash) curvelabel="-1.96SD:#sd"

               curvelabelposition=max curvelabellocation=outside curvelabelsplitchar='#'

               curvelabelsplitchardrop=true curvelabelsplit=true curvelabelattrs=(color=black size=6);

      discretelegend 'scatter' / opaque=false border=true halign=right valign=bottom   
               displayclipped=true across=1 order=rowmajor location=inside;

    endlayout;

  endgraph;

  end;

run;

 

ods listing image_dpi=1200 gpath="c:\temp" style=mypng;

ods graphics on / reset=all imagename="test1" imagefmt=png width=690px height=480px noborder;

 

proc sgrender data=test template=sgdesign;

run;

quit;

 

ods listing close;

ods graphics off;

 

1 REPLY 1
Damo
SAS Employee

Hi @Minki

 

I can reproduce the behaviour you reported on my side but unfortunately I did not find a solution for you (using weight=bold, etc.).

You may want to discuss that one with your SAS Technical Support.

 

Sorry Smiley Sad

 

Cheers,
Damo

SAS Innovate 2025: Save the Date

 SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!

Save the date!

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
  • 1 reply
  • 1024 views
  • 0 likes
  • 2 in conversation