cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
The Discovery Summit 2025 Call for Content is open! Submit an abstract today to present at our premier analytics conference.
Get the free JMP Student Edition for qualified students and instructors at degree granting institutions.

When I save figure as SVG, text rotation is lost.

HydroBug
Level II

Hello all -

I'm running JMP Pro 16.1.0 and I have an issue that is driving me insane. I have a fairly complex figure with tons of data.  I need to add some text labels to it so I can describe different periods of time. The text needs to be rotated so that it will fit in the space and read well. I read on a post that Text Annotations cannot be rotated counterclockwise, but plain old text text can.  So I added my text labels as shown in the script below:

Capture3.PNG

When I run the script, the figure is PERFECT.  Took a long time to get to this point.  I am super happy with it in JMP, this is what it looks like:

Capture2.PNG

Here is my problem: When I export/save the graph as an SVG, the text rotation is lost as is shown below:

Capture1.PNG

If I export as an EMF file, the text rotation is kept, but I want to save as an SVG. Any ideas why this is happening or if it has to do with the scripting?  It is really driving me insane, I have spent HOURS on these sets of graphs and I just want those labels rotate and a nice SVG file.

Thank you all for ANY input you can provide.

1 ACCEPTED SOLUTION

Accepted Solutions
Craige_Hales
Super User

Re: When I save figure as SVG, text rotation is lost.

Looks like a bug. You can work around it like this:

Use the TextFont command to specify the font name and rotation.Use the TextFont command to specify the font name and rotation.

@Audrey_Shull - the bottom graph is the saved SVG, opened in an external viewer, Firefox in this case.

 

gb = Graph Builder(
	Show Control Panel( 0 ),
	Variables( X( :height ), Y( :weight ), Overlay( :sex ) ),
	Elements(
		Points( X, Y, Legend( 1 ) ),
		Smoother( X, Y, Legend( 2 ) )
	),
	SendToReport(
		Dispatch( {}, "height", ScaleBox,
			{Label Row( Label Orientation( "Perpendicular" ) )}
		),
		Dispatch( {}, "weight", ScaleBox,
			{Label Row( Label Orientation( "Angled" ) )}
		)
	)
);

Report( gb )[framebox( 1 )] <<
addgraphicsscript( Text( counterclockwise, {60, 60}, "Hello" ) );

Report( gb )[framebox( 1 )] <<
addgraphicsscript(
	{fname, fsize, fstyle, fangle} = Text Font();
	Text Font( fname, fsize, fstyle, -90 );
	Text( {65, 60}, "Hello" );
);
Craige

View solution in original post

4 REPLIES 4
Craige_Hales
Super User

Re: When I save figure as SVG, text rotation is lost.

Looks like a bug. You can work around it like this:

Use the TextFont command to specify the font name and rotation.Use the TextFont command to specify the font name and rotation.

@Audrey_Shull - the bottom graph is the saved SVG, opened in an external viewer, Firefox in this case.

 

gb = Graph Builder(
	Show Control Panel( 0 ),
	Variables( X( :height ), Y( :weight ), Overlay( :sex ) ),
	Elements(
		Points( X, Y, Legend( 1 ) ),
		Smoother( X, Y, Legend( 2 ) )
	),
	SendToReport(
		Dispatch( {}, "height", ScaleBox,
			{Label Row( Label Orientation( "Perpendicular" ) )}
		),
		Dispatch( {}, "weight", ScaleBox,
			{Label Row( Label Orientation( "Angled" ) )}
		)
	)
);

Report( gb )[framebox( 1 )] <<
addgraphicsscript( Text( counterclockwise, {60, 60}, "Hello" ) );

Report( gb )[framebox( 1 )] <<
addgraphicsscript(
	{fname, fsize, fstyle, fangle} = Text Font();
	Text Font( fname, fsize, fstyle, -90 );
	Text( {65, 60}, "Hello" );
);
Craige

Re: When I save figure as SVG, text rotation is lost.

Thanks for the example @Craige_Hales - we opened a ticket with the dev team, but it's nice to have this workaround documented too.

HydroBug
Level II

Re: When I save figure as SVG, text rotation is lost.

Thank you!  I will give it a try later today and report back.

-Erika.

HydroBug
Level II

Re: When I save figure as SVG, text rotation is lost.

Hi Craige -

It works!!!  The text exports perfectly.

Thank you, thank you, thank you!

-Erika.