MathGroup Archive 2010

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: i get an empty figure when exporting it, if I keep

  • To: mathgroup at smc.vnet.net
  • Subject: [mg112122] Re: i get an empty figure when exporting it, if I keep
  • From: Themis Matsoukas <tmatsoukas at me.com>
  • Date: Tue, 31 Aug 2010 04:17:55 -0400 (EDT)

Andy & Mirela,

I can confirm that the graphic file is empty in the code given by Mirela (you have to plot something that spans the negative axes -- see example below). This is the case whether you Export into a file (pdf or eps), copy/paste to another application, or copy to clipboard and transfer to preview.app with command-N. But if you print the whole notebook into a pdf, the graphic is included.

The problem seems to be a conflict between Epilog and ScientificTicks. If you remove either one, the graphic is saved correctly. In the example below I removed the ScientificTicks wrapper and everything works as expected.

I would treat this as a bug in Mathematica  because the graphic shows correctly on screen and there is nothing to alert the user that when saving to a file the graphic disappears.

By the way, there ought to be a simpler way to print labels in scientific format --although a quick search in the help files did not come up with  anything. 

Themis

$Version
"7.0 for Mac OS X x86 (64-bit) (November 11, 2008)"


result = resultmodif = Table[{i, i}, {i, -80000, 80000, 2000}];
SetDirectory@NotebookDirectory[];

(* Using ScientificTicks*)

ScientificTicks[plot_Graphics, xSci_: False, ySci_: True] := 
  Module[{t}, 
   Show[plot, 
    Ticks -> {(t = Ticks /. AbsoluteOptions[plot, Ticks])[[1]] /. 
       If[xSci, {x_, xlab_?NumericQ, r__} -> {x, 
          ScientificForm[x, NumberFormat -> (Row[{#1, "e", #3}] &)], r}, {}], 
      t[[2]] /. 
       If[ySci, {y_, ylab_?NumericQ, r__} -> {y, 
          ScientificForm[y, NumberFormat -> (Row[{#1, "e", #3}] &)], 
          r}, {}]}]];

MyGraphSciTicks = 
 ScientificTicks[
  ListPlot[{result, resultmodif}, PlotRange -> Full, AxesOrigin -> {0, 0}, 
   Joined -> True, PlotStyle -> {Black, Red}, AspectRatio -> 2, 
   Epilog -> {Inset[
      Labeled[Framed[
        ScientificTicks[
         ListPlot[{result, resultmodif}, 
          PlotRange -> {{4.54, 4.6}, {-4480, -4250}}, Joined -> True, 
          PlotStyle -> {Black, Red}, ImageSize -> 110, 
          Ticks -> {{4.56, 4.58}, {-4400, -4300}}], False, True]], "Zoom In", 
       Top], {8, -35000}], Text[Style["h[\[Mu]m]", 14], {10, -6000}], 
     Text[Style[
       "Im[\!\(\*SuperscriptBox[\"\[Omega]\", \"*\"]\)][\!\(\*SuperscriptBox[\
\"s\",
       RowBox[{\"-\", \"1\"}]]\)]", 14], {2.5, -70000}]}], False, True]


Export["MyGraphSciTicks.pdf", MyGraphSciTicks, "PDF"]

(*Without ScientificTicks*)

MyGraph = ListPlot[{result, resultmodif}, PlotRange -> Full, 
  AxesOrigin -> {0, 0}, Joined -> True, PlotStyle -> {Black, Red}, 
  AspectRatio -> 2, 
  Epilog -> {Inset[
     Labeled[Framed[
       ListPlot[{result, resultmodif}, 
        PlotRange -> {{4.54, 4.6}, {-4480, -4250}}, Joined -> True, 
        PlotStyle -> {Black, Red}, ImageSize -> 110, 
        Ticks -> {{4.56, 4.58}, {-4400, -4300}}]], "Zoom In", 
      Top], {8, -35000}], Text[Style["h[\[Mu]m]", 14], {10, -6000}], 
    Text[Style[
      "Im[\!\(\*SuperscriptBox[\"\[Omega]\", \
\"*\"]\)][\!\(\*SuperscriptBox[\"s\",
      RowBox[{\"-\", \"1\"}]]\)]", 14], {2.5, -70000}]}]

Export["MyGraph.pdf", MyGraph, "PDF"]


  • Prev by Date: Re: FindRoots?
  • Previous by thread: Re: i get an empty figure when exporting it, if I keep
  • Next by thread: Why is Newton's method failing to "find sufficient increase in function"?