Import 如何在不丢失文本的情况下导入Mathematica中的.eps?

Import 如何在不丢失文本的情况下导入Mathematica中的.eps?,import,wolfram-mathematica,stata,eps,Import,Wolfram Mathematica,Stata,Eps,我试图将Stata生成的直方图作为.eps文件导入Mathematica,但它不显示轴的标签。也就是说,出于某种原因,Mathematica不将.eps作为导入,而是对其进行转换 我怎样才能避免呢?到目前为止,我使用的是平原 Import["~/hst.eps"] Mathematica当前(v.9)通常无法正确地从.eps文件导入文本元素。一种可能的解决方案是从绘图软件中将绘图导出为.pdf而不是.eps,然后导入生成的.pdf。如果需要将文本作为文本导入,可以使用“TextOutlines

我试图将Stata生成的直方图作为.eps文件导入Mathematica,但它不显示轴的标签。也就是说,出于某种原因,Mathematica不将.eps作为导入,而是对其进行转换

我怎样才能避免呢?到目前为止,我使用的是平原

Import["~/hst.eps"]
Mathematica当前(v.9)通常无法正确地从.eps文件导入文本元素。一种可能的解决方案是从绘图软件中将绘图导出为.pdf而不是.eps,然后导入生成的.pdf。如果需要将文本作为文本导入,可以使用
“TextOutlines”->False
选项关闭大纲显示

如果无法从绘图软件导出为.pdf,您可以使用另一个程序,然后如上所述导入生成的.pdf。 对于使用然后导入生成的.pdf的文件,我得到(Mathematica 8.0.4):

由于Mathematica 8.0.4仍然不正确地导入旋转文本,因此我对
“TextOutlines”->False选项进行了注释。我还没有用v.9测试过


另一种可能是将.eps文件中的所有glypth转换为oultines。基于

gsEPS2outlinedEPS[epsPath\u String,outlinedeppath\u String]:
运行[“gswin64c.exe-sDEVICE=epsrite-dNOCACHE-sOutputFile=\”“
outlinedEPSPath“\”-q-dbatch-dNOPAUSE\”epsPath
“\”-c退出“]
这里的
gswin64c.exe
是64位Windows系统的GhostScript可执行文件的名称,对于Linux,将其替换为
gs

请注意,您应该已经安装并配置了(对于Windows,您将
gs\bin
gs\lib
添加到
路径
,其中
gs
是顶级Ghostscript目录)

我最近使用了LateX和pdf图形,这也在eps版本中得到了体现。我最终修改了用户编写的GrapherExportPDF,事情似乎解决了。也许你会发现这个解决方案很有帮助

我能以某种方式自动化这个过程吗?@Nick的可能重复我认为这些问题有不同的范围,尽管你链接的问题与这个问题非常相似。我认为我们应该把这些问题分开:这是关于在Mathematica中导入.eps的问题,这是关于在Mathematica中将.eps转换为.pdf的问题。我会适当地编辑它们,这很有帮助。最初的问题是发布了两个密切相关的问题,但是如果你能把它们分开,那就好了。上传一个简单的测试EPS文件到一个合适的网站,这样就更容易发现问题所在。当然,这是示例文件
gsEPS2PDFEmbedFonts["orders_weekly.eps", "orders_weekly.pdf"]
graphics=First@Import["orders_weekly.pdf"(*,"TextOutlines"->False*)];
Show[graphics, Frame -> True, PlotRange -> All, ImageSize -> Automatic]
gsEPS2outlinedEPS[epsPath_String, outlinedEPSPath_String] := 
 Run["gswin64c.exe -sDEVICE=epswrite -dNOCACHE -sOutputFile=\"" <> 
   outlinedEPSPath <> "\" -q -dbatch -dNOPAUSE \"" <> epsPath <> 
   "\" -c quit"]