# Tag Info

23

Mathematica can Import your file, and the result is a handy set of graphical primitives. So in this particular case we can do all the steps needed for data extraction without leaving Mathematica. I will not do the whole work for you but show the correct approach to the problem. First, you Import the file and check in what form the curves of interest are ...

18

Here is a quick introduction to the problem of transparency flattening. In short, EPS (Encapsulated PostScript) format "as is" does not support transparency (while PDF format supports it). It means that a figure containing transparent objects must be converted into another figure which does not have transparent objects but looks exactly the same in order to ...

11

Mathematica's abbreviated PostScript What you see after pressing Ctrl + Shift + E in this case is Mathematica's abbreviated PostScript code. You can find some information about it in MathGroups archives: Mathematica abbreviated PostScript This is the PostScript that is understood by the notebook front end and is generated by the Mathematica kernel ...

10

Here is a more simple example showing the same effect: G1 = ListPlot[ Table[{i , Sin[i j Pi/50]}, {j, 3}, {i, 50}], PlotRange -> All, Joined -> True, AspectRatio -> 0.8, PlotStyle -> {{Purple, Thickness[0.012]}, {Blue, Thickness[0.014], Dashed}, {Red, Thickness[0.013], DotDashed}}] Export["test1.eps", ...

8

Try to add the option: PlotTheme->"Classic"which transforms the plot to the style of MMA7: pad = 100; Fig8 = Plot[{2 Cos[x], Sin[x]}, {x, 0, 1}, PlotTheme -> "Classic", Frame -> True, PlotStyle -> {{Thick, Black}, {Thick, Dashed, Gray}}, AspectRatio -> 0.6, PlotRange -> All, FrameLabel -> {{"FroeschlĂ© HE", "Chirikov mLE"}, {"...

7

This problem is known and I had a lengthy discussion with one of the developers of Inkscape about this some years ago. Basically, it is a problem of the renderer (aka your browser) and is connected to alpha-blending that happens when you have polygons that share an edge. Additionally, this problem was described in several other posts. See here and here for ...

6

If you want to make sure that all exported EPS will look fine even without explicitly rasterizing the plot every time, you can force the rasterization by this one-time command that you could put at the beginning before creating any of your plots: Map[SetOptions[#, Prolog -> {{EdgeForm[], Texture[{{{0, 0, 0, 0}}}], Polygon[#, ...

5

The figure you are trying to Export into EPS format contains semi-transparent objects unsupported by this format: Cases[CSSSS, _Opacity, Infinity] {Opacity[0.3]} Actually all the filling produced by RegionPlot is semi-transparent as you can easily find using my shortInputForm function: CSSSS // shortInputForm Since transparency actually isn't necessary ...

5

The culprit here is not the legends, it is your usage of Opacity for one of the PlotStyle directives. EPS does not support opacity. Instead of warning you or simply ignoring the directive mathematica chooses to rasterize the whole image. (And evidently using a lossy compression no less ) FYI you can do this to see if you have an embedded raster in the eps: ...

5

CorelDRAW is not a PostScript viewer. Its ability to import EPS files has serious limitations and is not guaranteed to preserve the original appearance of the figure. One workaround is to place the EPS file inside of the CorelDRAW document instead of importing it but it has a drawback: you will see only EPS preview, not the actual content of the EPS file. (...

5

With version 10.4.1 I get the plot rasterized (but not the legend) with your code. As a workaround you can use the Jens' trick: Export["myFig2.eps", Graphics[Inset[pl, Automatic, Automatic, Scaled[1]]]]; Here is how the exported EPS file looks when opened by Adobe Acrobat 11 (I have selected a number on the frame in order to show that it is a selectable ...

5

On some computer systems, the OS & Mathematica seem not handle fonts properly when exporting to EPS. I am not able to check all systems, but it is possible that converting an expression to PDF first and then to EPS might work. Importing the PDF shows that the font glyphs in the image you get have been converted to Mathematica graphics primitives (...

5

Convert the graphics to PDF and import that. Mathematica supports PDFs. If the result is not good, try simplifying the PDF with various tools, and converting to earlier PDF specifications (1.3). Also try outlining fonts. Acrobat, Ghostscript and mupdf are useful. https://mathematica.stackexchange.com/a/2783/12 https://mathematica.stackexchange.com/a/...

5

Same problem for me (mma v11.2.0, OSX). Here is a workaround which seems to work for me: ExportString[YOURARRAY, "SVG"] // StringReplace[#, {"stroke-width:0.03" -> "stroke-width:0."}] & // Export["reparray.svg", #, "Text"] & After investigating a little bit, it seems that mma produces by default an extra mesh, different from the one you would ...

5

Here is another hack that I learned from this answer (this means, go and vote for it!). We can use a different rendering for different parts of SVG. To include this in into the SVG created by Mathematica, we need to improvise and this should probably be done on the XML structure and not by replacing strings. For my answer, I won't go through this. What we ...

4

I appreciate the solution given by Jens and find it's a nice one. The problem with that solution is that the required font Times-Roman is actually missing from the Type1 Mathematica folder. So I just wanted to share a workaround I found. It's very simple. Open your pdf in Adobe Illustrator, hit OK when proposed to use a substitute font. Go to the Type->...

4

One should note, that in Mathematica Version 9 this issue no longer appears. I tried it here on Linux x86 (64-bit): RegionPlot[x^2 + y^2 < 1, {x, -1, 1}, {y, -1, 1}, PlotStyle -> Black]; Export["tmp/region.pdf", %] Maybe someone can confirm this for other systems.

4

The default grid lines style uses uses partially transparent grid lines: InputForm@AbsoluteOptions[fig, GridLinesStyle] (* {GridLinesStyle -> Directive[GrayLevel[0.5, 0.4]]} *) where the second argument of GrayLevel specifies opacity. As pointed out by george2079 in the comments, this causes the exported eps file to be partially rasterized. Specifying ...

4

May be this is also an option for you. I assume you want to have specific characters or fonts (defined in your paper with Latex-commands) in your plot, and that is the reason you want an eps-figure. I usually use the \psfrag in the Latex code. 1) Create your plot (plot1) in Mathematica as you like it 2) Create a preparated version for editing in Latex (...

4

Row formats input list "arranged in a row, potentially extending over several lines". To prevent line breaks, you can wrap Row[...] with Style using the option LineBreakWithin -> False: ClearAll[fun2]; fun2[n_, k_] := With[{t = Tuples[{0, 1}, n], r = {0 -> "\[UpArrow]", 1 -> "\[DownArrow]"}}, Column[Style[Row[#, " "], LineBreakWithin -> False]...

3

I think your syntax is wrong. Try the following Export[pathWithFileName, mmaImageName, "EPS"], where pathWithFileName contains the path and the name of the exported file i.e. "path/filename.eps". In my answer the option "EPS" is not necessarily needed.

3

The simplest way is to use Export m = RandomInteger[{0, 9}, {8, 10}]; Export["mat.png", MatrixForm[m]] If you want to make it good looking, you can use Style. Following the suggestions of Verbeia and Edmund, you can do either m2 = Map[Style[ToString[#], 16, Bold, FontFamily -> Times, Blue] &, m, {2}]//MatrixForm Export["mat.png", MatrixForm[m2]] ...

3

THIS IS AN EXTENDED COMMENT RATHER THAN AN ANSWER. $Version (* "10.4.1 for Mac OS X x86 (64-bit) (April 11, 2016)" *) plt = Plot[Sin[x], {x, 0, 2 Pi}] Export["Desktop/myfile.eps", plt]; plt2 = Import["Desktop/myfile.eps"] The tick labels are missing although they appear when the eps file is opened in another application (e.g., Preview). However, ... 3 Try to use the FixPolygons package by Will Robertson. It merges adjacent polygons with the same color producing vector image of lesser size with the same (or ever better) quality. For installing the package you should copy the FixPolygons.m file to the "Mathematica/Applications" directory in your user profile. Then you can use it as follows: << ... 3 Mathematica uses the style environment specified by the ScreenStyleEnvironment FrontEnd option for on-screen rendering and Exporting into raster formats but for printing and Exporting into PostScript formats it uses the style environment specified by the PrintingStyleEnvironment option. They have different values by default: Options[$FrontEnd, {...

3

You probably need to replace the density plot with a Raster. The following makes a 28KB PDF file (sorry, my EPS exporter does not seem to work -- I always use PDF in TeX these days), which approximates DensityPlot[Sin[x] Sin[y], {x, -4, 4}, {y, -3, 3}]. The DensityPlot[..] took 1.8MB. Legended[ Graphics[ Raster[ Rescale@ Table[Sin[x] Sin[y], {y, ...

3

This problem is SOLVED by printing the offending text components using white color. In other words, when I use tekstit = Graphics[{Text["df", {0.4, 0.23}], Text["dr", {1.5, 1.35}], Text["dr", {0.75, 0.7}], Text["r1df", {0.6, 0.32}], Text["r2df", {1.43, 0.85}], Text[Style["A", White], {0.82, 0.5}], Text[Style["B", White], {1.68, ...

2

Have you tried converting the eps to pdf first? The epstopdf package is nice for this. \documentclass{article} \usepackage{graphicx} \usepackage{epstopdf} \begin{document} \includegraphics{plot.eps} \end{document} I've run into the same sort of problem. I can't currently confirm for your set up because I'm not running a Linux box at the moment. I ...

2

What you observe is line-wrapping which is turned on in Column with the default setting ItemSize -> Automatic: ItemSize->Automatic line-wraps textual elements at the page width On the same Documentation page we read that ItemSize -> Full allows every item its full width and height So all what you need is to add ItemSize -> Full option ...

2

You need this method i think: P1 = Plot[Sin[x], {x, 0, 6}]; P2 = Plot[Sin[x], {x, 0, 6}, AxesStyle -> Opacity[0]]; Overlay[{P1, P2}]

Only top voted, non community-wiki answers of a minimum length are eligible