图像缩略图

matlab2tikz / matlab2tikz

1.0.0.0版(203 KB)通过 尼科·施勒默
一个脚本来MATLAB /倍频转换成数字TikZ方便和一致纳入乳胶。
4.8条
226额定值

454个下载

更新2020年5月22日

github查看GitHub上牌照

编者按:流行的文件20132015年20162018

这是matlab2tikz,用于将MATLAB数字成原生TikZ / Pgfplots附图一个MATLAB(R)脚本。
matlab2tikz支金宝app持的最MATLAB的数字,包括2D和3D绘图的转换。对于与第三方包构建的情节,你的里程可能会有所不同。
该工作流程如下。

一个。放置matlab2tikz脚本在一个目录中(src /文件夹中的内容)MATLAB哪里能找到它(当前目录,例如)。湾请确保您的LaTeX安装包括包

TikZ(又名PGF,> = 2.00)和
Pgfplots(> = 1.3)。
生成MATLAB你的情节。

调用matlab2tikz通过
```
>> matlab2tikz();
```
要么
```
>>matlab2tikz('myfile.tex文件');
```
脚本接受许多选项;通过调用帮助检查它们,
```
>>帮助matlab2tikz
```
有时,通过将不可见对象保持在周围或将绘图拉伸到超出边界框太远的位置,MATLAB很难创建匹配的LaTeX绘图。使用
```
>> cleanfigure;
>>matlab2tikz('myfile.tex文件');
```
先清理不需要的实体的图形,然后将其转换为TeX的。

myfile.tex`的`的内容添加到您的LaTeX源代码;这样做的一个方便的方法,就是为了用`\ {输入} /path/to/myfile.tex`。另外,还要确保你的文档的页眉的Pgfplots包包括:
```
\ {的DocumentClass文章}
\使用包{pgfplots}
%和任选地(如Pgfplots 1.3):
\ pgfplotsset {COMPAT =最新}
\ {pgfplotsset情节坐标/数学解析器= FALSE}
\ newlength \ figureheight
\新长度\图Width
\ {开始}文件
\输入{myfile.tex}
\结束{文档}
```
据报告,与以下乳胶包装不兼容:

信号流程图http://www.texample.net/tikz/examples/signal-flow-building-blocks/(查看http://sourceforge.net/tracker/?func=detail&aid=3312653&group_id=224188&atid=1060656。)
如果您遇到错误,有什么matlab2tikz可以做很好的例子,或者如果你只是寻找的更多信息,请访问matlab2tikz的网页https://github.com/matlab2tikz/matlab2tikz.

引用作为

尼科Schlömer(2020年)。matlab2tikz / matlab2tikz(https://www.github.com/matlab2tikz/matlab2tikz),GitHub的。检索.

评论和评级(361)

嗨!它的工作原理非常好!良好的工作!

然而,我发现这两个主要问题:

- 当使用次要情节,没有传奇,matlab2tikz自动添加即使没有指定一个传奇。我看到这个错误是固定的以前版本的MATLAB,但对于2019b版本,它仍然出现。

- 为yy金宝appaxis地块的支持。

HAZ

嗨!对不起BAU IY不工作对我来说...我有这些错误:
无法识别的函数或变量“getEnvironment”。

误差在matlab2tikz> checkDeprecatedEnvironment(线6728)
[ENV,envVersion] = getEnvironment();

误差在matlab2tikz(线144)
checkDeprecatedEnvironment(minimalVersion);

010101

你好。是否有机会,日期时间问题得到尽快解决?这个问题似乎很长时间以来悬而未决。

010101

是否有可能使用公制单位而不是英寸的默认?我的意思是这样的:
\开始{轴}[%
宽度=4.521in,
高度=3.566in,
在= {(0.758in,0.481in)},
仅缩放轴。。。

非常感谢你的努力!!!

Funcionóperfectamente。

不错,但不yyaxis尚不支持金宝app

Extemely有用的,但由于未知原因,节省了标签/传说中的部分文字(或也许这只是我)。

哇男人这东西是非常有用!我被卡住的经典\ includegraphics {保存图形}之前,我发现这个脚本。谢谢您!

非常感谢你。

这是真棒,完美的作品。有一个问题,我解决不了它:它不能绘制多面图的交集。你有什么解决方案来解决这个问题?

插口

这半晌伟大的工作,遗憾的是它已停止工作,也不会打开该文件,我得到了行错误535 FID = fileOpenForWrite ...

这件事发生很随机没有警告,现在是不能使用的 - 为解决这个任何想法?

非常好,功能实用的设置。不可替代的。

只有一个问题。为什么选择“extracolors”?

问候,

rotton

好东西。
但是,我可以提供一些建设性的意见:
- 你m2tInputParser无法理解函数调用matlab2tikz(“文件句柄”,FID)正确并发出警告。可能会建议使用MATLAB的inputParser。
- 为什么传说中自动创建?有没有办法避免这种情况?

Creatlee

@Ondrej:这是乳胶新安装的典型障碍。建议让你注释掉线,而是安装厘米超级包,它提供了现代计算机字体国际使用的矢量版本(也见https://tex.stackexchange.com/questions/1291/why-are-bitmap-fonts-used-automatically欲获得更多信息)。

的Ondrej

我克服了这种行为。。。当您注释行“\usepackage[T1]{fontenc}”时。所有标签都矢量化。

的Ondrej

嗨,
谢谢你,这么一个方便和易于使用的工具!有谁知道如何解决在编译的PDF文件的光栅/矢量字体的问题呢?我用matlab2tikz,MATLAB2016b的最新版本,并MIKTEX分布的更新版本(使用pdflatex编译)。即使在一个情节y轴标签被打印为矢量字体,但X轴是通过位图状的字体标记。这导致像素化标签时,PDF被放大。

你可以帮帮我吗?谢谢。

感谢您对这个非常好的工具。

我只是发现了特殊的数据错误:如果一个线图的x轴包含整数只有数字,y轴是另一种数据类型的(在我的情况double类型的小数字),y轴的所有值都被强制转换为在x的数据类型。就我而言,所有的y值都设置为零。我只是铸造的所有图形数据为double类型(在在功能“getXYZDataFromLine”如下“matlab2tikz.m”行1820,1821,2824,1825实施quick'n'dirty修复:

尝试
XDATA =双(GET(H, '扩展数据'));
YDATA =双(GET(H, 'YDATA'));
抓住
%项目注释
XDATA =双(GET(H, 'X'));
YDATA =双(GET(H, 'Y'));
结束

也许,有有同样的问题一些人。希望,这将有助于。

一个非常整齐优点保存数字作为Tikz代码,而不是用于乳胶EPS文件是可适应纵横比。

阮党

很不错的工具,非常感谢!我currenty使用M2T产生的出版物不错的数字。不幸的是它似乎很困难一些箭头添加到人物。我总算implemet一点点的解决方法,这似乎也为我工作。

首先a编写了一个函数,用于绘制由数据坐标系定义的注释箭头并将其固定到当前轴。可以在这里找到:https://de.mathworks.com/matlabcentral/fileexchange/65769-drawarrow-x-y-varargin-
在matlab2tikz.m文件中,我向函数handleAllChildren添加了“case'arrowshape'>[m2t,str]=handleObject(m2t,child,@drawArrow);”。在drawArrow函数中,我将“arrowSpec='{Stealth}-{Stealth}';”更改为“arrowSpec='{Stealth'}-{Stealth'}';”。
除此之外散点图的标记指定线条宽度被忽略。增加了 “[M2T,lineOptions] = getLineOptions(M2T,H);”和 “drawOptions = lineOptions;”在函数内部drawScatterPlot似乎解决这个问题。

正如我真的不是专家程序员这些adaptions是肯定不能以最佳的方式来实现。然而,也许它可以帮助作者进一步完善这真的有用的工具。

克莱门斯Briese

非常好的工具,非常感谢

一个有用的包,写得很好。是期权“MarkerIndices”支持Matlab的行对象金宝app?

我已经通过主文件一看,它看起来像你的假设是,如果指定了“无”以外的标记样式是属于线上的每个数据点都会有一个标记。如果可能的话,你可以添加一个“MarkerIndici金宝appes”选项的支持?我想这可能只是插槽进入“getMarkerOptions”功能。然后,你就只需要为每一个线两条tikz地块。一种含不具有对于具有标记选项采样数据集的标记物和一种完整的数据集。这可能会需要一些摆弄的“的drawLine”功能来定义两个单独的drawoptions。

A必须进行研究。

写篇论文非常有用

东华王

伟大的工具。

我可以问一个问题吗?我无法弄清楚如何防止传奇的一代,当Matlab的情节都没有。MWE:

图(X,Y)%没有传说
matlab2tikz(文件名);%具有传奇

另外,我有一个面积图,我添加了线图。不幸的是,这些行没有添加到输出图中。有解决办法吗?

提前致谢!

非常有用的代码!谢谢您!

里贝罗

惊人的一段代码。谢谢您。

使这最后一个官方MATLAB函数。因此,它被正式支持和修复可以一次传递。金宝app例如,它不支持yyaxis功能,这是非常烦人。金宝app

我遇到了一个小问题,而使用这个(精彩)代码。当x轴的标签,从说:

集(GCA, 'xticklabels',{ '这\\是一个', '炭\\标签'})

pgfplot文件需要如下行:

xticklabel风格= {ALIGN =中心},

编译与换行符的xticklabels(它编译如果标签不包含换行符就好了)。matlab2tikz似乎并没有自动添加所需的线。感谢所有伟大的工作!

你好,

是否matlab2tikz支持保存金宝app数据绘制的使用自2016年开始MATLAB版本polarplot功能?

我可以节省使用“极地”功能绘制的数字,但不是“polarplot”。

谢谢,

艾伦

@Edward Kolanko:谢谢你的客气话。我相信它应该有可能产生一个“空”输出文档,通过在MATLAB图添加一个空的轴线。不过,我真的不知道你为什么要问:有什么具体的你是后?毕竟:没有内容的情节就像是一个酒吧没有啤酒;-)

这是非常非常好。我爱上了从第一张图。

我不知道是否有可能在不图绘制图形生成TEX代码。

朱利奥

惊人的工作!完美的作品!

玛丽

这个包很好,非常感谢您所做的一切工作!

近日,MATLAB改变了他们的语法双轴地块,因此不推荐命令plotyy()了。当使用yyaxis(),而不是(这是他们推荐什么),图中没有两轴对象了,但只有一个。
虽然matlab2tikz工作得很好,当有两个轴对象(句柄这些都可能啊= findobj(GCF,“类型”,“轴”)检索),它并没有任何更多的新的格式显示左侧阴谋.你有可能解决这一问题?这将是对我帮助很大,谢谢!

奥拉奥伦

亲爱的埃贡非常感谢你的回复。

@Deepak Ingole:这是不是一个错误信息,只是一个参考性消息。我们不这样做哪个pgfplots的版本在安装了(因为这是复杂的,独立于平台的方式做)一个适当的检查。我们这样做,但是,请检查您的情节,从最近的版本需要一些功能,并且在这种情况下,我们相应地调整该消息。
检查是在那里,因为相当多的人被一个旧版本卡住,这样他们就提前知道乳胶是否会窒息。

请注意,消息为“你需要pgfplots 1.3或更高版本”,所以你应该用1.14的罚款。

如果这样的信息性消息打扰你,你可以添加`“showInfo”,FALSE`的参数matlab2tikz抑制这些消息(也看看`帮助matlab2tikz`,因为有一些更多的选择,以减少输出到安慰)。

有人可以帮我解决pgfplots版本的问题。我有pgfplots版本1.14,但仍然我得到的错误如下:“您需要pgfplots版本1.3或更高版本编译TikZ输出。”

我试着在MATLAB 2015B。

谢谢您。

谢谢你的更新。我有使用输出文件的几个问题:
1.当堆叠图(断面图和普通Y图表)输出到.tikz或.tex文件,我尝试使用数字胶乳文件,所有的数据点在不同的地方结束时比原先绘制。此外,图例消失,我已设定的y轴上的标签的取向(定向,“0”)被恢复到90的默认方位。
2.当我尝试使用未指定任何缩放大小一般matlab2tikz输出数字生成一个数字,我结束了延伸远远超出了页面的范围非常大的数字。我必须始终手动缩放.FIG图像下降到一个更小的图像,除了指定的缩放值,(例如,“宽度”,“0.5 \文本宽度”),它没有与旧版本的事情。

做得好!

据我了解的可能性增加了“忘记阴谋”选项冲浪地块失踪。我只是说了以下行功能“drawSurface”:

如果~m2t.currenthandlehasleggend
%没有传说条目中找到。不包括传说中的情节。
OPTS = maybeShowInLegend(假的,OPTS);
结束

它暂时解决了这个问题,但我不确定它是否能解决所有的突发事件。

惊人的工作!

我用Matlab 2016B。奇怪的是,当我使用matlab2tikz产生.tex,

1)xticks的值被复制和在该图中,而不是那些xticklabels的再现。

2)字体是从我选择了在Matlab不同。

你能告诉我相关的链接,在那里我可以阅读这些问题,并可能解决它们吗?

谢谢

惊人的工作。荣誉

BUANA

已经用了很多年了。我真的很喜欢。没有硕士或博士学位论文甚至是不可想象的。

大包,
当导出透明补片(如从例如有界线),贴片透明度设置但轮廓绘制。下面可以围绕线3030置面阿尔法时,可以添加
OPTS = opts_add(OPTS, '绘制透明度',的sprintf(m2t.ff,0));

尼古拉斯

@Egon Geerardyn,

我理解。。。
到目前为止,你做得很好。所以,再次感谢。

我建议其他想手动使用注释来解决他们所需要的确切cordonates谁Tikz用户。下面的免费应用程序可以帮助:GEOGREBRA。

@stefed:我们都知道,我们不完全支持yyaxis或其他新的结构在R2015b /金宝app R2016a。您仍然可以尝试plotyy(除非已经从MATLAB的最后一个版本中删除)。说实话,我还没有超过一个月打开MATLAB。

@pankaj辛格:这不是matlab2tikz的问题,而是你正在使用的编译器的LaTeX的基本限制。请务必阅读文档https://github.com/matlab2tikz/matlab2tikz/wiki/TeX-capacity-exceeded,-sorry

@Djibril TOGOLA:我在源代码中快速查看了关于箭头问题的代码。这是一个众所周知的问题:这是我们仍然必须实施的。

潘卡辛格

@埃贡·杰拉德。。。谢谢您。。。。我也遇到了类似于@ragheb的内存问题。就像……”已超出TeX容量,抱歉[主内存大小=3000000]”。我的数据只有401KB。
然后我使用,你的建议“0.3g”,它把我的数字大小减少到203kb(几乎50%)。所以对我有效。再次感谢。

我要求作者取悦改进他的代码,以便较大的曲线/曲线被自动转换为大小由胶乳可以接受的。
谢谢...

潘卡辛格

ü也可以使用
\ pgfplotsset {缩放X蜱=碱基10:0}
\ pgfplotsset {缩放的Y蜱=碱基10:0}

在你的乳胶文件的序言分别调整XTICK标签和标签ytick ...ü可以更改像10:1,10:2,...等。按您的需要滴答值。
谢谢

潘卡辛格

不列入包括蜱。为什么???

潘卡辛格

包括虱子吗???

塞缪尔

伟大的工具,谢谢!

Luuk

@hannes菲舍尔
您希望此设置消除了千个分隔符:
'×蜱标签样式= {/ PGF /数字格式/ 1000 =九月}'

如果你已经对x刻度标签样式设置更多的设置,它可以是这样的:

'×蜱标签样式= {旋转= 90,锚=东,/ PGF /数字格式/ .CD,固定,固定ZEROFILL,精密= 0,1000 =九月}'

加固的

太好了,但我不支持yyaxis功能,这是在M金宝appATLAB 2016a新。你能做到这一点吗?

雷耶斯

真棒!非常感谢你。

@Egon Geerardyn,我感谢你的好意,但我很遗憾地通知你,这也不起作用。错误保持不变:

警告:不知道注释“matlab.graphics.shape.Arrow”。
>在matlab2tikz> userWarning(线5955)
在matlab2tikz>drawAnnotationsHelper中(第3079行)
在matlab2tikz> drawAnnotations(线3024)
在matlab2tikz>saveToFile中(第519行)
在matlab2tikz(第362行)

我发现解决这个问题的唯一方法是手动添加注释到tikz文件。这是昂贵的,因为它需要找到确切的坐标。

@Djibril TOGOLA:我认为与即将发布(1.1),这不应该再发生。你已经可以得到这个版本从我们的发展分支在GitHub上(https://github.com/matlab2tikz/matlab2tikz/archive/develop.zip)

该文件不适用于箭图。我已经能够在2014a、2014b和2016a版本上复制相同的错误。错误如下:

矩阵尺寸必须一致。

误差在matlab2tikz> drawQuiverGroup(线3661)
数据(4,:) = X + U;

误差在matlab2tikz> drawHggroup(线2466)
[m2t,str]=drawQuiverGroup(m2t,h);

误差在matlab2tikz> handleAllChildren(线654)
[M2T,STR] = drawHggroup(M2T,儿童);

matlab2tikz>绘图轴中的错误(第852行)
[M2T,childrenEnvs] = handleAllChildren(M2T,手柄);

matlab2tikz>saveToFile中的错误(第450行)
M2T = drawAxes(M2T,relevantAxesHandle);

误差在matlab2tikz(线352)
的SaveToFile(M2T,FID,fileWasOpen);

误差在hw1p1(线22)
matlab2tikz( 'hwp1fig.tikz')

===================================
否则,出色的工作!

艾伦

测试,无头和图形两种,无法在Mac上运行MATLAB版本:9.1.0.390522(R2016b)预发行。

用Matlab(2015B)的最新版本,我发现以下错误:

警告:不知道注释“matlab.graphics.shape.Arrow”。
>在matlab2tikz>用户警告中(第5316行)

借助MATLAB以前的版本,并没有出现这样的错误。那么,你有什么看法?

该工具是完美的。感谢您!

Beenwa

@斯雷纳思:谢谢你的好话!如果出现反复出现的问题(或者您每次都觉得有必要进行一些小的修改),请毫不犹豫地在GitHub上报告一个问题,我们将看到可以对此做些什么:-)

“matlab2tikz”确实在转换MATLAB / GNU八度阴谋pgfplots / tikz一个伟大的工作,节省了大量的时间和精力。轴,蜱,标签,电网等都是在tikz输出完美。现在有没有必要写的变量分隔的文件与pgfplots绘制。小的修改在乳胶插入tikz代码之前需要。这始终是这种情况,如果我们转换从一种格式到其他。一个伟大的包!由于开发商(S)。

@Matthew托利弗:谢谢你的客气话!目前,对于在输出随机地将自己的代码不支持。金宝app然而,有一些支持计划(和几乎完全实现)这个工作金宝app。您可以监控进度https://github.com/matlab2tikz/matlab2tikz/pull/832.

我非常喜欢这个节目,我的论文将没有一件很痛苦的。有没有办法像这样从MATLAB脚本添加了一些输出TEX文件?

\ addplot [颜色=黑色,固体,线宽= 1.0pt,域= 0:1,样品= 11] {X + X ^ 2};
\ addlegendentry {式\ REF {当量:方程}};

我的大多数图形都是分散的数据和功能数据的混合。有时,它会是不错的图表使用pgfplots本地图形实用功能数据。

@Stefan Schiessl:谢谢你的客气话!是否有一个原因,为什么你会看到这是一个工具箱?一年前,我们已经评估是否要提供它作为一个工具箱。Back then (I cannot speak for the situation right now, but I assume little has changed) it was impossible to integrate MATLAB toolboxes, MathWorks's FileExchange and GitHub in a decent way (i.e. without storing big binary blob files that may go outdated in our git repository). Back then, this disadvantage vastly outweighed the few advantages of a toolbox (basically: one-click install and distribution). But we are certainly willing to reconsider this decision.

可靠的工具来创建LaTeX的地块花哨!

你想把它当作工具箱吗?

@Jonas:许多线的标准MATLAB属性被转换为TikZ,例如如果设置在MATLAB情节的“线宽”,这将增加“线宽= ...”到相应的值。如果你想拥有扭捏TikZ代码(例如东西其中有没有MATLAB对应)更低级访问,在未来的版本中,这将被包括在内。已经有一个实验,在执行https://github.com/matlab2tikz/matlab2tikz/pull/832它工作得很好。

乔纳斯

是否有可能将属性添加到addplot?某事像

addplot [...,线宽度= 2点功能]

线宽度= 2点功能
==============

不自动重新打开tikz文件?

@Lairenlakpam Joyprakash辛格:请对我们的GitHub报告未来的问题。在这种情况下,也有你的代码的一些错误:您所提供的“floatFormat”值不正确,它应该是LIKE“%0.3f”或“%0.3克”代替。此外,建议把文件名作为第一个参数,而不是最后一个)。这一点,因为旧版本并没有改变:在浮点格式一直喜欢了多年。

谢谢。我得到了它后,我阅读文章https://github.com/matlab2tikz/matlab2tikz/wiki/TeX-capacity-exceeded,-sorry

它的工作原理,当我使用LuaLaTeX。但是,使用像cleanfigure其它命令()以及matlab2tikz(“floatFormat”,“%0.3”,“myfile.tikz”)的不工作如后曲线仅轴[无波形。

我的MATLAB代码为:
[信号,FS和nbits] = wavread( 'OS​​R_us_000_0010_8k.wav');
积(信号);
%wavplay(信号,FS);%基于Windows的计算机
声音(信号,FS);%基于Mac电脑

来源wav文件是从打开语音库在:http://www.voiptroubleshooter.com/open_speech/american/OSR_us_000_0010_8k.wav

@Lairenlakpam Joyprakash辛格:你可能想报告我们的GitHub页面上,你所遇到的问题https://github.com/matlab2tikz/matlab2tikz与一起解释我们如何能够复制它们。

早期版本有三个文件,即matlab2tikz.m,matlab2tikzInputParser.m和updater.m,在美丽的正弦波和其他在2014年的少点阴谋,但现在我不能使用较早版本/连这个最新版本,以出口工作的讲话信号图从MATLAB到PGF :-(

早期版本有matlab2tikz.m、matlab2tikzInputParser.m和updater.m三个文件,在2014年可以很好地处理正弦波的较少点图和其他点图,但现在我不能使用早期版本,甚至最新版本从MATLAB创建语音图到pgf:-(

塔希尔

正是我需要的。继续精彩的工作

Orides Golyjeswski

刘军

很有用,工作也很好。做得好!非常感谢开发人员一直在更新它。

@Ingrid:它目前还无法传递不同的参数,不同的次要情节。我看到您的问题几个解决方金宝搏官方网站案:

(1)I认为应该是可能的呼叫cleanfigure通过使轴柄来代替图中的手柄。所以,如果你使用不同的参数调用cleanfigure每个插曲,是应该做的伎俩,我想。

(2) 如果上述方法不起作用;将子块拆分到不同的图形上,对每个图运行cleanfigure,然后将这些图重新组合为一个图形中的子块(FileExchange和StackOverflow上有一些函数可以帮助完成这些步骤)。

(3)在GitHub上的开发分支,存在使用次要情节(和分辨率等)的大小来简化你的痕迹一新的简化算法。这应该是比目前的这个版本更可靠,可能更好地工作,用一个单一的数字范围设置。

英格丽

我的内存不多了,所以我需要应用cleanfigure。然而,我的次要情节不同的规模是不一样的,所以我需要不同的精度适用于每一个插曲,而不是同一个值到所有次要情节 - 我怎样才能做到这一点???

英格丽

@Ingrid:这些变更尚未传播到你可以在这里下载的版本。如果你想尝试这些新功能,请下载https://github.com/matlab2tikz/matlab2tikz/archive/develop.zip相反。

英格丽

根据这个https://github.com/matlab2tikz/matlab2tikz/pull/773#discussion-diff-39700006R1078有一个传说,而不是两个应该是固定的plotyy但我仍然得到两个legens

这个脚本是一个爆炸。它使最美丽的科学报告我甚至已经看到了我的生活。保持良好的工作 !

阿尔方

@hannes fischer:数字格式可以使用乳胶文档中的“pgf/number format”选项设置。更多信息可以在TikZ手册中找到(https://www.ctan.org/pkg/pgf),也包括pgfplotstable手册(https://www.ctan.org/pkg/pgfplotstable)包含了大量的信息。

大家好,

感谢您对本工具。这帮助了我很多,情节看起来非常好。但是我正在寻找一个不成功小时我的问题的解决方案。

这里是:
我只想在没有任何东西的情况下繁衍数千人,我不想要这样的数字:2000。我只想要这样:2000。
我该在哪一行脚本中更改它?

谢谢您!

@Raph:谢谢你报告关于markerEdgeColor的错误!我们将解决这个问题。
与大小和颜色都改变的散点图,不幸的是,一些目前不支持。金宝app问题是,使用pgfplots相同的机制(即元数据),所以指定与其他人会冲突都得到一套。我觉得可能是周围的一种方式,但它可能需要一些时间来实现这一点。

拉斐尔

当散射体的颜色由颜色映射设置时,散射标记的缩放也不起作用。当所有的散射体都有相同的颜色时,效果很好。

拉斐尔

伟大的工具,非常感谢。

使用scatter()我得到错误

>未定义函数或变量“markerEdgeColor”。
>
>matlab2tikz>getScatterOptsColormap中的错误(第3237行)
> [M2T,易彩] =的getColor(M2T,H,markerEdgeColor, '补丁');

添加行
> markerEdgeColor = GET(H, 'MarkerEdgeColor');
帮助,也许你可以包括这或提供更好的修复。

温德林

@Cornelius捷斯:在x轴的日期时间值已经添加到我们的发展释放MATLAB 2014B和更新。您可以通过下载在GitHub上“开发”分支得到这个版本(否则,它会发布在这里为好,但我不能保证任何时间未定)。

这个工具非常有助于在乳胶文件中创建漂亮的绘图-谢谢!
然而,我曾经遇到过一个问题:我有日期时间值作为x轴的曲线图。当导出情节到tikz文件,只有数字值显示,而不是正确的日期。可这个问题如何解决?

@Andries:我们做支撑co金宝appntourf地块:-)(一定要确保你有1.0.0版或更新版本)。许多这些地块应该没有问题,但我不得不承认有一些尚未实现某些地方,看到https://github.com/matlab2tikz/matlab2tikz/issues/723.但是,这些必将在未来的版本中解决。

安德烈

大文件,但请支持contourf阴谋!金宝app

由于埃贡!

@Tina Fohrmann:这只是一个警告,因为matlab2tikz不能确定什么图的phyiscal大小为物理单位。您可以关闭此警告使用“警告关闭MATLAB2TIKZ:UnknownPhysicalUnit”。但可能是最好的解决办法是重置单位回物理一句:“集(figureHandle,‘单位’,‘寸’)”(或者你喜欢的任何其它MATLAB单位)已执行的代码后,你提供的。然后MATLAB需要转换的照顾。

感谢伟大的文件!
我得到以下错误
警告:无法转换单元“规范化”。使用转换系数1。

调整这个数字的时候:
集(figureHandle, '单元', '归');
集(figureHandle, '位置',[0 0 0.6 0.75]);

有什么我可以做什么?

杰里米

@Sebastian邦贝里:我已经加入我们的GitHub跟踪此功能的要求。

@Selwyn:我们确实有3D直方图一些支持,但它金宝app是相当有限的。在你提到的链接,尼科显示3D的例子直方图,以及。然而,正如你可以看到https://github.com/matlab2tikz/matlab2tikz/issues/732,这是目前很难全面支持,由于多种原因,这些数字。金宝app

感谢尼科的巨大贡献!

我面对关于ISO轮廓虽然有点问题。
显然,服装生产线的生产线规格被忽略了。

%起始代码

Z =峰();

副区(1,2,1)

hPC的=令pColor(Z);

hPC.FaceColor = '的interp';
hPC.EdgeColor = '的interp';
hPC.LineStyle = '无';

保存所有;

轮廓(Z, '-k', 'ShowText', '上');

推迟;

副区(1,2,2)

轮廓(Z, '-k', 'ShowText', '上');

matlab2tikz('pcolorandcourtour.tex颜色轮廓','独立',正确);

%结束代码

反行应显示为黑色,但得到相同的颜色表从令pColor补丁绘制。因此,你无法看到它们。它成为第二个插曲更加清晰。

我真的很感谢你的帮助。

塞巴斯蒂安

塞尔温

太棒了!一直使用它。非常感谢!
我想建议的histrogram2对象的支持。金宝app更多关于它,可以发现:http://tex.stackexchange.com/questions/52987/3-dimensional-histogram-in-pgfplots.

塞尔温

杰里米

感谢伟大的包!

matlab2tikz

@E、 Ch3yn3t:您可能需要尝试为清理数据而提供的“cleanfigure”函数。如果没有清除许多nan,可以在github上提交一个功能请求https://github.com/matlab2tikz/matlab2tikz/issues/问题

E. Cheynet

E. Cheynet

优秀的主动!

给定的绘图可能包含许多NaN值。
我想知道是否可以在这个脚本中实现一个方法,自动从创建的tikz文件中删除NaN值。目标是减小创建的文件的大小,并提高其可读性。

E. Cheynet

@PatronBernard:这是非常可能的,是的。我们将在即将发布的更清楚地传达这种依赖性。

附录:可能是当图的标题包含乳胶标记时。

辉煌的软件。但是,是有可能,你的最小工作示例需要amsmath包列入?

梦幻般的工作......

危害

F A

伟大的作品!做得好!该cleanfigure()函数也是真棒

约翰内斯

@redfixie:能否请您对我们的GitHub这个报告https://github.com/matlab2tikz/matlab2tikz/issues/问题(再加上一小段重现这个问题的matlab2tikz和MATLAB的代码)。谢谢!

redfixie

嗨,我有个简单的问题。当我使用matlab2tikz LaTek转换堆叠条形图时,只显示条形图的最终颜色,而不是整个范围。有什么建议吗?

奥利维尔的问题在开发版本。

嗨奥利维尔,可以请你报告此上https://github.com/matlab2tikz/matlab2tikz/issues/问题与再现的问题最少的代码示例?

奥利维尔

工作得很好,除了标签中的符号|,我需要编辑.tex并将|替换为$|$。还有别的办法吗?

精彩的。非常感谢你的工具。

onewhaleid

els公司

再次感谢你的伟大工具,尼科·施洛默。我只有一个善意的请求。是否可以自动检查ternplot函数是否生成图表,然后使用pgfplots的ternaryaxis特性将其导出到tikz?

尼古拉

亚历克斯

@Janis直方图的支持已经在开发金宝app分支被加入,将成为下一个版本的一部分。

贾尼斯

看来,在R2014b引入的新直方图特征尚不支持:金宝app

使用matlab2tikz误差> handleAllChildren(线664)
我不知道如何处理这个对象:直方图

@dsaf这个问题对于R2014b(HG2)已被固定在发展分支,将是下一版本的一部分。

@Oleg:这是一个最小版本的问题:

%加载用户定义的颜色映射矩阵
FIG1 =图(1);
于imagesc(LOG10(兰特(200200)));
彩条;

%。这将在所有的tikzpic创建无彩条
matlab2tikz('图形手柄',图1,'测试.tex');

@Thomas:请在提交问题https://github.com/matlab2tikz/matlab2tikz/issues/问题提供再现误差(包括Matlab的版本,并用于matlab2tikz)的最小的例子。

@dsaf:您能阐述一下你所说的“没有工作”是什么意思?

新的彩条的功能的MATLAB R2014b的(<=>彩条对象,而不是轴对象)尚不支持,对不对?金宝app

我试着用用户定义的颜色映射保存图像,但是没有成功。。。

托马斯

伟大的工具,它使工作更容易!谢谢!

但是有一个大阴谋,包括彩条我得到一个错误,已经报道了2013年5月12日。

使用matlab2tikz错误> patchcolor2xcolor(线3699)
不知道如何处理颜色模型“口译”。

matlab2tikz>getColor中的错误(第3646行)
[M2T,xcolor] = patchcolor2xcolor(M2T,颜色,手柄);

误差在matlab2tikz> drawPatch(线1786)
[m2t,xEdgeColor]=getColor(m2t,handle,edgeColor,patch');

误差在matlab2tikz> handleAllChildren(线620)
[M2T,STR] = drawPatch(M2T,儿童);

误差在matlab2tikz> drawAxes(线838)
[M2T,childrenEnvs] = handleAllChildren(M2T,手柄);

误差在matlab2tikz>的SaveToFile(线438)
M2T = drawAxes(M2T,relevantAxesHandle);

误差在matlab2tikz(线349)
的SaveToFile(M2T,FID,fileWasOpen);

我在用matlabr2013。也许有人能帮上忙?

@Ragheb:我们也对如何在解决在我们的wiki您的问题的一些信息https://github.com/matlab2tikz/matlab2tikz/wiki/TeX-capacity-exceeded,-sorry

嗨拉吉卜,

要使用大PGF或TIKZ附图时,对于MIKTEX使用命令行增加存储器:

initexmf --edit-配置文件中=胶乳

打开一个编辑器,您可以在其中放置新值。例如。

main_memory = 5000000
extra_mem_bot = 5000000
字体大小=5000000
pool_size = 5000000
buf_size = 5000000

然后调用下一个更新的乳胶格式的文件。
initexmf --dump =胶乳

对于PDFlatex,替换这两种情况下与pdflatex乳胶

拉吉卜

为什么乳胶不编译大tikz文件?

我试图从MATLAB三维球体图matlab2tikz和它完美的作品,因为相应的tikz文件只有50KB。不过,我想在TEX文件以包括人物往往超过100MB!乳胶拒绝编译这样的文件给我的错误:“超过,遗憾[主内存大小= 5000000] TeX的能力”。

你能告诉我怎么解决那个问题吗?

@Pepijn,我报你的问题,以及:
https://github.com/nschloe/matlab2tikz/issues/435

@Konrad斯塔尔,
这一点已经得到报告,并将得到改进。见https://github.com/nschloe/matlab2tikz/issues/377

嗨!
在新版本中它总是补充说:

每个外x轴线/ .append风格= {白色!15!黑},
每x刻度标签/ .append风格= {字体= \ {色白!15!黑}}

到TEX-代码(和也为y轴),即使我使用

AX = GCA;
ax.XColor = '黑';
叶绿假单胞菌='黑色';
ax.ZColor = '黑';

在Matlab代码。

有办法改变吗?我不想要灰色的斧头,我也不想每次都手动改变。

@Monika:2014b之前的版本支持大多数注释。2014年b,我们还没有实施。金宝app

莫妮卡

它支持在Matl金宝appab中的注释?它不会绘制箭头或文本框

莫妮卡

它支持在Matl金宝appab中的注释?它不会绘制箭头或文本框

莫妮卡

它支持从MATL金宝appAB注解?它不会绘制任何箭头或文本框。

@arnold:我问尼科把该链接顶部这里减少错误报告的数量和获得更多的反馈Github上代替。

从更新的历史可以看出,我们很少有新的版本(上一个版本是在4月份),我们非常有意识地发布它们(我同意你的观点,即这些列表不应该被污染,我们尽量不去污染)。

这里的最后一次更新是身边的时候,当我们发布了0.5版本,以及。但由于FileExchange现在我们在Github主分支整合,这已经成为不清晰的更新是什么:不涉及人工的过程,其中尼科更新这个页面。加上Mathworks公司,我们正在进入一个好方法是将两个GitHub上和FileExchange相结合,以更清晰的方式提供新版本的内容。总之:WHIE此页面尚未在显著方式改变,代码:-)

阿诺德

嗨尼科,
非常有用的工具,非常感谢这一点。

比较特别备注/问题:我被你已经承诺所有的“更新”混淆。我尽量保持我用更新,因此我定期检查本网站上的文件。你有“更新”贡献“目前的贡献联系更加突出”的幌子下多次。我想你不只是这样做撞这个文件了“最近”列表,但我永远无法找到一个更新。

我想我不是唯一的一个花时间来检查什么是你的代码更新。由于作为代码是好的,对文件交换的“最近更新”列表变得相当无用的,如果每个人都这样做,或者你想过来github上移动大家:)

马库斯

最有用的脚本我使用,伟大的工作:)

埃贡·吉拉迪恩

@Vegar:M2T使用在你的身影设置打印单位,而那些是默认英寸。您可以更改这些或手动选项`width`和`height`(还有你也可以用`\ textwidth`,`\ columnwidth`等)提供给他们。

@Todd:如果提供“strictFontSize”选项,则会考虑字体大小。

@Jan:`contour`被转换成pgfplots`contour`由于在MATLAB 2014B或更高M2T V0.5。(`contourf`,但是,还没有在这种情况下支持)。金宝app

Vegar Ottesen

提交是优秀的!然而,默认情况下它定义英寸的情节宽度和高度,符合美国标准的纸张,而不是ISO A4,这是全球范围内更为常见。

我可能会建议在情节宽度\文本宽度,而不是一小部分的变化?

罗伯托

天才!!

托德

太好了!虽然需要一些更多的选择。

1.指定轴的字体大小,图例等

2.当有在给定的Matlab的数字多个轴,轴就没有正确胶乳隔开。

3.选项来包括tikzpicture环境中额外的代码。

Grunde

我一直用这个!

不错的工作

扬Kappen

非常好。

但两个小问题:
第一招:是否支持等高线图?金宝app我的意思是pgfplot的轮廓。如果使用 '轮廓(峰(20),10);'与M2T只有区域地块导出它被使用。

第二个:如果我使用“contourf”,蜱是不可见的,刻度标记在那里。那是一个错误吗?

谢谢您!

Sharah

我希望每个人都可以回答这个问题。这句话很好,如果我绘制图形,然后只将其更改为tikz。

但问题是当我尝试添加图上一些个性化的文字,当我试图把它列入TEX文件,它说的错误是这样

包pgfplots错误:[mesh/rows=2,mesh/cols=0]的参数假定为0 p
分,但实际上我得到了N=1分!数据矩阵似乎不完整

亚伦

谢谢!

乔治

我有一个自定义的定位彩条,剧本不占那个呢。也许这是你要寻找到未来的某事?

西蒙娜

对于版本2014B有问题。比如传说中消失。
干杯

尼科

谢谢你的精彩剧本!

我经历了两个问题,我试着用一些代码黑客(使用时注意解决:)
(我正在R2013a和pdflatex)

1)多线图例项:
最小工作例如:在MATLAB中运行:
----
数字;情节(1:10,1:10);图例(sprintf的(“这是一个\ n多图例项”))
matlab2tikz( '文件名', 'm2ttest.tex', '宽度', '0.8 \ columnWidth时', '身高', '5厘米')
----
在乳胶:
--header--
\使用包{pgfplots}
\ pgfplotsset {COMPAT =最新}
\ {pgfplotsset情节坐标/数学解析器= FALSE}
\ usetikzlibrary {plotmarks}
--- \开始后{}文件---
\开始{数字}
\输入{m2特斯特.特克斯}
\标题{TIKZ Test}
\ {端数字}
----------------

结果:图例项出现在一行。有一个在m2ttest.tex换行符其中乳胶忽略。
我试图解决这个问题:
a)以功能prettyPrint变化,线4840(见差异在底部)
b) 第731行中的更改(见底部的差异):将“[align=left]”添加到“\addlegendentry”。否则,如果在图例项中使用换行符“\\”,则我的latex将中止并出错。我看到matlab2tikz将图例样式设置为“legend cell align=left”。为什么需要额外的显式规范“align=left”是奇怪的。。。也许我做错了什么?

2)的图例的定位:
当我移动的传说,比方说,离去的身影(在GUI)的底部,它不会出现(恰好)在乳胶这个位置。这个问题似乎是在MATLAB中,图例位置是相对于该图中,而在tikzpicture,它是相对于轴线。在线路3646开始,matlab2tikz似乎尝试确定MATLAB位置是否相对于数字或轴(单位=“归一化”或“像素”)。在我的情况下,单位是“标准化”,但相对于图中的位置仍然是。所以,我只是修改了剧本总是充当如果单位是“像素”(复制的代码从“案‘像素’”到“情况‘规范化’”)。在此之后,传说positionig发挥预期。

我修改matlab2tikz.m:
DIFF matlab2tikz.m.orig matlab2tikz.m
713c713
---
>的sprintf(\\ addlegendentry [ALIGN =左] {%S}; \ n \ n',加入(M2T,C, '\\'))];%#好
3646c3646,3651
<位置= legendPos(1:2);
---
>%的位置= legendPos(1:2);
>%计算,其中图例位于w.r.t.轴。
> axesPos = GET(m2t.currentHandles.gca, '位置');
>%默认情况下,轴的位置被给予w.r.t.在图中,
>%等是图例。
>位置=(legendPos(1:2)-axesPos(1:2))./ axesPos(3:4);
4840c4845,4848
<
---
>%现在,在字符串的所有字符阵列是一维的,我们还需要分割字符串在换行字符
>字符串= cellfun(@(X)strsplit(X,的sprintf( '\ n')),字符串 'UniformOutput',假);
>串= [字符串{:}];
>

萨利乌

@Kine
运行前将这些行添加在脚本的结尾。它确实为我工作

轴选项={'scaled x ticks=false',。。。
'×蜱标签样式= {/ PGF /数字格式/ .CD,固定,固定ZEROFILL,精度= 3}'};

matlab2tikz('我的图片.tex','轴外选项',轴选项);

NGUYEN

尊敬的作者:,
在测试你的包时,它发现它真的很有趣。然而,我有时遇到了这个错误:

“试图访问CData的(:,1);索引超出范围,因为大小(CData的)= [0,0]。
".

你能告诉我发生了什么事,请!

NGUYEN

感谢这么多,这是非常有用的

Luuk

非常有用,谢谢!

Fariborz

马丁

很好的包装。谢谢你的工作。

嗨!

非常好的工具。我刚刚试着转换一个图形,它使用散射(X,Y,[],C)来绘制不同颜色的圆。

似乎是在你的代码中的错误(或功能只是尚未实现)中的getColor(M2T,手柄,颜色模式)功能。这似乎并不能够处理多种颜色。

一个简单的例子是这样的:
散射([1 2],[1 2],[],[0 0 0 0 1 0]);
matlab2tikz( 'test.tikz');

这将导致一个错误。你认为你能解决这个问题?是绝对伟大的;)

母牛

嗨!
喜欢数字的样子!但我有一个问题,有没有办法,我可以强迫轴的极限?例如,我正在制作一个值为0.005,0.006的图形。。。在x轴上,当我把这个数字放入乳胶中,得到0.5*10^{-2}时,有没有可能强制它保持原来的样子?还有什么能强迫y极限成为特殊值吗?

一月

即时五颗星你,因为它不仅是相当强大的,如前所述,也非常容易使用。谢谢您!

从现在起在Matlab /乳胶工作时的必备工具。还有就是,虽然在情节的传说有些麻烦时介绍TeX的符号或代码(说P_E)和tikz文件将其作为纯文本,但我想它可以是固定的(我做手工在生成的文件)。优秀的文件,谢谢。

一个非常有用的小工具,在你的MATLAB路径。:)

斯特芬

首先,非常好的工具!它是迄今为止与TeX会产生最美丽的曲线组合!

只是一个小问题,为了配合德国排版我用逗号分隔符-before-使用matlab2tikz替换所有的点分隔符。
这工作得很好的轴标签,标题和刻度标记。但似乎是关于传说中条目的问题:

我的一些legendentries包含的内容是因为它们创建动态使用num2str()用点分隔的数字。都写在结合一些描述性文字。所以一个legendentry可能是:

$ \拉姆达= $ 1.5,$三角洲= $ 3.4

用逗号更换点后,它可能是
$\lambda=1,5$,$增量=3,4$
要么
$\lambda=1{,}5$,$Delta=3{,}4$(我尝试了两种类型)。

使用上图matlab2tikz后,在legendentry的“原始”逗号保持,而逗号分隔符用点分隔符更换一次...

我希望你明白我的意思,也许你也有解决这个问题的一些提示

问候

默认情况下,将externalData设置为true是一个错误;很快将发布一个新版本,以解决此问题。

丹尼尔

@费利克斯
“外部数据”,false
或RTFM

我认为编译器在抱怨.tsv文件中缺少“\\”

嘿,

我今天更新到0.4.5版本,并有创造而不是一个大.tikz文件数.tsv格式,文件。

这可能是很多人都有利,但我宁愿有一个大的.tikz文件。

有办法把它换回来吗?

蒂娜

我解决了这个问题:
为Ubuntu的版本的texlive仍然使用pgfplots 1.8但最新matlab2tikz文件pgfplots 1.9是必要的(与errorbars地块)。
这有点安装pgfplots在Ubuntu 1.9疼痛,但这样做后,再次精品工程。

也许在下一次更新时,可能会提示需要另一个pgfplots版本。

蒂娜

嘿,
我只是喜欢matlab2tikz,感谢您的文件!

不幸的是我有现在errorbars一个问题:
在旧版本v0.4.2中,点和条被定义为(x,y)+-(xerr,yerr)。
现在,在版本v0.4.4它是(X,Y)+ =(xerrup,yerrup) - =(xerrdown,yerrdown)。它不工作对我来说,编译文件中texmaker。有没有人有同样的问题和/或知道如何解决这个问题?

谢谢你的帮助。

PIYUSH康德

乳胶伟大的工作。
塔克斯

卡尔

卡尔

卡尔

埃里克

这是同时使用MATLAB和LaTeX这样的人一个很好的补充!五颗星的迷死人。*****

在小问题,我今天遇到的:
我使用cleanfigure时得到一个警告。
---警告:忽略未知参数“minimumPointsDistance”---
这正是从函数cleanfigure()的帮助中复制的参数。当使用“minimumPointDistance”(“Point”而不是“Points”)时,我不会得到错误。只是想让你知道!

尼古拉

美联社

约尔根

我认为出口酒吧地块时,同时使用“figurewidth”变量,使胶乳设置数字大小有问题。条的宽度被设定为相同的值“figurewidth”。这使得棒的方式来宽。

@Anfänger听起来像一个错误。如果你想让它固定的,在提交的报告<https://github.com/nschloe/matlab2tikz/issues?state=open>用一个最小的MATLAB例子来强调错误行为。

Anfänger

只是我的问题一个小的修正:由标签,我的意思是,当我把等高线标签withing盒子,盒子是由matlab2tikz忽略。例如,如果我SWICH轴位置(在顶部x轴),标签仍写入在由matlab2tikz底部

Anfänger

@NicoSchömer,许多感谢伟大的工作。如果允许的话,我想问一下为什么M2T忽略例如标签,添加文本...等?

尼科·施勒默

@lyxicon

一。有“extraAxisOptions”选项。如果这对你不起作用,你可以在<https://github.com/nschloe/matlab2tikz/issues?state=open>。

2.有cleanfigure()来帮助你。

三。这是可能的,你可能是第一个在m2t中使用步进/脉冲图的人。如果你能提出一个错误并提供最少的失败例子,那就太好了。

马蒂亚斯

如何使用cleanfigure()函数?我需要减少我的情节数据点的数量。我跑cleanfigure(),但没有改变。有人能帮我吗?

非常酷!谢谢您!

lyxicon

相当惊人的提交。我只是有一些小问题吧:

一。无法为每个子批次提供额外的轴选项(例如高度和宽度)。当您有几个垂直堆叠的具有公共x轴的子批次,并且希望从除底部外的所有子批次中移除x轴标签,或者希望每个子批次具有不同的高度时,这一点尤其需要。

2.它需要一个更好(更聪明)采样算法。目前,它是很容易打TeX的内存限制,当你有大量的点(见http://tex.stackexchange.com/questions/59562/matlab2tikz-tex-out-of-memory/66831#66831)

三。它无法正确转换由step()、impulse()函数等(从控制系统工具箱)自动生成的时间图

这是非常酷的事情,结果看起来真的比PNG图像大。

Anfänger

杰出的!它确实节省了很多时间和工作。我是tikz的新手,想问一下,有没有办法同时生成*.tikz和*.pdf文件?无需在外部编辑器中打开.*tikz文件并生成pdf版本。

非常实用,结果看起来真的很棒。

是有可能改变的代码,这样的“点荟萃分钟”和“点荟萃最大”值总是在情况下保存的,所以我选择以后就加入了彩条会显示正确的规模有多大?

@Maria在提交您的问题https://github.com/nschloe/matlab2tikz/issues?state=open通过一些简单的示例代码来突出哪些地方出了问题,可以更容易地解决问题。

马尔科

绝对伟大的工具!

空白的问题(参见克里斯托弗,2013年3月25日)还没有完全得到修复,但(v.0.4.0):

在“definecolor”行周围,应再放置一些“%”:

行555:把一个额外%%的前

m2t.content.colors = sprintf的( '%% \ n %%定义自定义颜色\ n');

线562,太:

m2t.content.colors = [m2t.content.colors的sprintf( '%% \ n')];

感谢您对未来的更新中加入这个!做得好!

罗伯特

喜欢这个工具,但是最小点距离选项怎么了?我哪儿也找不到。。。它在当前版本中被删除了吗?有人知道在matlab2tikz接管之前可以减少数据点的工具吗?

谢谢

玛丽亚

真不错的套餐!非常感谢!

我面临的一些问题,虽然涉及到子图。

1)错误 - 在子图栏不是printed.I收到以下警告:
“警告:误差线丢弃(即将实施)。”

2)我使用suplabel.m以生产超 - X / Y - 为子图的标签。
在使用matlab2tikz时,有没有办法保持图中的suplabels?现在当我把这些数字插入乳胶中时,上面的标签就不见了。

3)最后一个问题我已经是保持在传说给定位置。有什么建议么?

非常感谢您的帮助!

Pepijn

首先,我真的要感谢你为这个美妙的包。虽然我发现了一个小错误。
当我使用:

一个= randn(10000,1);
B = A + 2;

数字;保存所有;
HIST(A,100);
HIST(B,100);

H = findobj( ' - 属性', 'FaceColor');
组(H(1), 'FaceColor',[1 0 0], 'EdgeColor',[0.5 0 0]);
组(H(2), 'FaceColor',[0 0 1], 'EdgeColor',[0 0 0.5]);

uistack(H(2)中, '顶部')

图例( '正常', '层叠');
matlab2tikz( 'test.tex', '宽度', '0.7 \文本宽度', 'showInfo',假);

如果我渲染测试.tex,正常和层叠的传说将是暗红色。它们应该是蓝色和红色的。

@Gregor你必须指定一个合适的格式。尝试“%0.3克”。

真棒包,但我与“floatFormat”参数有问题。
如果我不设置这个参数的所有数据点被写入在生成* .tex文件 - 但随后是大的。
所以我设置这样的精度:
matlab2tikz( 'myfile.tex', 'floatFormat', '3');

在输出没有数据点会被写入,只有“3在这个例子。

这是一个问题,或者做一个使用此参数以错误的方式?谢谢您!
我希望你能帮助我。

很大的包,非常感谢!但我有一个小问题,我无法修复。我需要添加“标记重复= 25”作为“\ addplot”选项列表中选择一个额外的参数。但我无法弄清楚如何做到这一点。“extraTikzpictureSettings”把它放到\ addplot环境之前。是否有变化增加一个输入变量解决这个问题?再次感谢!

玛丽安

你好,
首先:很好的教程!感谢它。
我与tikz文件有问题,我不知道如何解决它。
y轴的标签与y轴上的刻度重叠。原因是比例尺的值非常小,并且乘以10^-3。不是10^-3在顶部(如在x轴中),而是所有的刻度值分别与之相乘,例如。
1 * 10 ^ -3
8 * 10 ^ -4
6 * 10 ^ -4

并且因此与标签值的第一列overlapes。我不明白,为什么是在x轴向右形式,但不是在y轴。在我的Matlab的数字有一切就OK了。
我希望我的解释是可以理解的,有人能解决这个问题。

蒂娜

好吧,经过一天的搜索,我想我找到了问题。。。。我有一个旧版本的pgfplots。。。

蒂娜

我觉得我有同样的问题,因为阿恩...

出于某种原因,我得到的错误包括matlab2tikz创建乳胶(但其他tikfiles)的tikz文件。我使用MATLAB R2012a,texmaker和Ubuntu。

问题似乎在tikz文件的表中。

一些错误,我得到:(带线};在表的末尾)
!缺少插入的endcsname\protect}
!额外\ endcsname。\ pgfutil @ ifundefind .. \ IFX \ csname#1 \ endcsname \放松\ expandafter \ pgfut ...}
!把新行不匹配它的定义
!\ @firstoftwo的参数有一个额外}

我真的很感谢你的帮助!

米奇

凯文

使用matlab2tikz>patchcolor2xcolor时出错(第3523行)
matlab2tikz:anycolor2rgbDon't知道如何处理颜色模型“口译”。

误差在matlab2tikz>的getColor(线3472)
[M2T,xcolor] = patchcolor2xcolor(M2T,颜色,手柄);

matlab2tikz>drawPatch中的错误(第1982行)
[M2T,xFaceColor] =的getColor(M2T,手柄,faceColor, '补丁');

matlab2tikz>handleAllChildren中的错误(第640行)
[M2T,STR] = drawPatch(M2T,儿童);

误差在matlab2tikz> drawAxes(线829)
[M2T,childrenEnvs] = handleAllChildren(M2T,手柄);

matlab2tikz>saveToFile中的错误(第487行)
M2T = drawAxes(M2T,relevantAxesHandles(IX),alignmentOptions(IX));

matlab2tikz中的错误(第396行)
的SaveToFile(M2T,FID,fileWasOpen);

凯文

使用matlab2tikz误差> handleAllChildren(线674)
我不知道怎么处理这个物体:光

误差在matlab2tikz> drawAxes(线829)
[M2T,childrenEnvs] = handleAllChildren(M2T,手柄);

matlab2tikz>saveToFile中的错误(第487行)
M2T = drawAxes(M2T,relevantAxesHandles(IX),alignmentOptions(IX));

matlab2tikz中的错误(第396行)
的SaveToFile(M2T,FID,fileWasOpen);

佩德罗

尼科,感谢这个提交,我敢肯定,很多人从中受益。
我和Etienne有同样的问题,如下:3D图中的Matlab补丁排序不正确,必须手动修复,这对于大的图形来说可能是不可能的。

凯文

很有用。但如何保持字体的名称/颜色/大小的数字轴或头衔吗?

阿恩

我喜欢使用这个漂亮的剧本,但由于某种原因,我不能让它的工作。我使用与下Kile的Ubuntu的Matlab的R2009b中。即使有基本的代码,这是行不通的。

我得到以下错误:
[PDFLaTeX]结束,退出代码1

./testpic.tex:1005缺少\ endcsname插入};

./testpic.tex:Extra \ endcsname};

谁能帮助?

Matlab2Tikz是一个伟大的工具!非常感谢分享!
@尼克:你做了出色的工作,这对我很有帮助。但是,您可能希望在将来的版本改变了次要的东西(目前unsing 0.3.2):如果一个人想转换的轮廓(F)的情节和结果包含在一个TEX文件,一个有难变对齐。这是通过所得到的文件的前序部分造成的,与一些空白行和\ definecolor命令。在我的胶乳分布(是MiKTEX)每换行符引起的小的移位到右侧(propably一个“空白”被解释),并作为更多的颜色被定义为进一步图中移位。为了避免这种情况,我添加%%其中\ defincolor设置,因此它读取:的sprintf(\\ definecolor {%S} {RGB} {。。。%15G,%15G,%15克} %% \N”
为了得到一个非常紧密的边界框,其他一些线路在序言中可能需要% - 符号了。
如果你要我,我可以给你出了问题,一个简单的例子。

最好的祝福,
克里斯托夫。

@乔格,我当然可以选择。如果你能在<https://github.com/nschloe/matlab2tikz/issues>并解释多一点关于所需要的格式,那简直太好了。

乔治

作品太棒了 - 我只有一个小小的建议:定义自定义颜色时,你可以转换地块的RGB值到CMYK?这已被证明使用pdflatex时,有必要在Adobe Reader中正确的颜色DISPLY,似乎是一个众所周知的问题

@Karthick您可以使用`latex`(生成PS-文件)以及`pdflatex`生成的文件,字体出来只是因为它们是LaTeX的文档中,你可以定制你的情节,它已经产生后,大概一堆其他的原因。总而言之,当你比较MATLAB的生成的PDF与matlab2tikz的编译后的输出,你会发现在质量上有明显的不同。

岩溶

它的确是个好包。但是有什么优势它已经从“打印成PDF”在MATLAB选项?

亲爱的尼科

我想3D绘图转换与许多补丁,但排序不正确。应出现在别人后面,一些补丁,出现在眼前。我不知道这是否是一个tikz问题,但如果你遇到了这个问题,以及不知道。任何帮助,将不胜感激。

@H VH阿亚拉:尝试matlab2tikz( '严格',真)。这将会使蜱正是MATLAB有他们。

^ h VHA

嗨,

如何设置M2T只有预先定义xticks?

使用MATLAB中的干细胞()命令,一个只会有兴趣只有其中有在xticks相关的数据值。

当做

@Anke这是目前不可能M2T别说了,我不会推荐它的线图 - 毕竟,M2T分不清哪些数据是对你很重要,并且可以剥离。我建议您手动降低您的3D绘图数据点的数量,直到TeX的编译时间变得可以忍受。

安科

伟大的工具,谢谢!只有一个问题:我如何使用“minimumPointsDistance”选项正确的冲浪阴谋?对于普通的地块,它工作正常,但冲浪,没有任何反应...

美联社

完美的作品!做得好!

卡欧

马亭

完善

一个必须具备的科学出版物。非常感谢你为你的努力。

尼科·施勒默

@Georg如果你提交一个bug在https://github.com/nschloe/matlab2tikz/issues让更多的一些细节(如提供与MATLAB代码的失败沿着png格式),我可以尝试解决这个问题。

乔治

奇迹般有效!使得乳胶外观精湛的人物。

一个小瑕疵虽然:当我叠加轴,一个包含具有透明性的IMGE,输出是两个PNG文件;这些都是黑色的。

美联社

太棒了!

美联社

nnunes

胡安

这是我所见过的MATLAB /乳胶码最好的一块!。

@H VH阿亚拉:
难道这些样式允许\ usepackage {} pgfplots?这将是唯一的条件。
此外,通过使用Pgfplots'‘外部化’功能,可以将这些曲线转换成应由任何刊物上本机支持PDF文件。金宝app(您可能要检查出matlab2tikz的“独立”选项也是如此。)

^ h VHA

包括在由脚本符合喜欢和爱思唯尔期刊IEEE提交生成的TEX文件TikZ文件?

gbernardi

阿明Schoisswohl的解决方案奏效了!;)

gbernardi

亲爱的尼科,

有没有办法来操纵情节元素的顺序?它似乎没有尽快遵守它,因为我的绘图数据点和线,例如图(X,数据指令,“k”,X,合身,“R-”)绘制的黑点在前台,无论Matlab的情节秩序,使红线的大型数据集几乎不可见。与“KO”出现同样的问题,而“K-”,即线两种元素,作品般的魅力,并将它们放在正确的顺序。

提前谢谢

@gbernardi:
\文本在amsmath包中定义。尝试在序言部分“\ usepackage {} amsmath”,这应该解决您的问题。

^ h VHA

@gbernardi
你尝试以下?

积(X,Y)
传说({“你的文字在这里”},“解释”,“乳胶”)

@gbernardi
matlab2tikz试图聪明地标记和标签看起来怎么样,但有时可能会失败。尝试“parseStrings”设置为false。
如果没有帮助,bug报告上的一个小例子代码https://github.com/nschloe/matlab2tikz/issues将不胜感激。

gbernardi

很好的工具,但是我遇到了传说的问题。
我写的东西在MATLAB中的传奇命令括在$ \文本{} $环境和\文本{}部分给出了一个错误编译时......你知道为什么吗?

说真的我只是看到我以前的评级为您的文件在2010年,我向你保证,这是偶然的完成了!我通常不率的文件,更不用说给,没有理由一星!这是一个伟大的工具,所以我希望我的额定电流莫名其妙正确的事情。有没有办法删除我先前费率或东西吗?感谢名单的分享!

伙计们,我不能给errorbar转换不均匀最小值和最大值。它说,目前这段代码只能转换甚至最小值和最大值。任何一个找到了解决办法?提前致谢。
阿西夫

米奇

克里斯

优秀的剧本,让专业的地块轻松。谢谢!

克里斯

嗨,
我和尼古拉斯·海尔基有同样的问题。您可以在文档的前导部分插入\pgfplotsset{scaled ticks=base 10:0},它应该能做到这一点(至少在使用datetick的情况下)。

干杯

卡洛斯

JoseMauricio

目录

大家好,

我发现了另一个问题:

不知何故,matlab2tikz无法处理>> plot3(xvector,yvector,zvector)<<文件。

即使是最简单的例子不工作:

%###################################################################

X =兰特(100,1)* 4-2;
Y =兰特(100,1)* 4-2;
z=x.*exp(-x.^2-y.^2);

%构建插入点
%F = TriScatteredInterp(X,Y,Z, '最近');
%F = TriScatteredInterp(X,Y,Z, '自然');
F = TriScatteredInterp(X,Y,Z, '线性');

%评价在位置(QX,QY),QZ的插值
%是在这些位置相应的值。
ti=-2.25:2;
[QX,QY] = meshgrid(TI,TI);
QZ = F(QX,QY);

坚持,稍等
冲浪(qx,qy,qz)
绘图3(x,y,z,'o')
视图(GCA,[ - 69 14]);
拖延

matlab2tikz( 'testplot3D.tikz', '身高', '\ plothoehe', '宽度', '\ plotbreite', 'parseStrings',假);

%###################################################################

张庭选

Rhymer杨

与matlabfrag相比,我更喜欢matlab2tikz。tikz的输出质量是一流的!干得好!谢谢!

它确实存在,被称为“minimumPointsDistance”。

matfig2pgf代码中有一个选项,以减少数据点的数量。ü可以包括我们的代码也同样的算法!...

是的,我想需要的MATLAB代码(例如,通过邮寄)。这就是说,警告似乎是明确的:“彩条的尺寸可能需要调整。”它可能说是有原因的。;)

3D绘图

我有开放的情节和输入:

matlab2tikz('我的文件.tikz','高','10厘米','宽','5毫米');

......正常工作与二维图。

...或者是你问的情节码?

示例代码?

3D绘图

喜。

谢谢。非常有用的脚本...一般。但我有我的3D绘图的问题显示在彩条时......我得到的错误信息:

“警告:x轴和y轴的单位物理不重合(X:毫米; Y:厘米)。颜色条的大小将
可能需要调整“。

“错误在==> matlab2tikz>在3852 getAxisTicks
s=str2double(标签{k});“

有什么解决办法吗?提前谢谢。

做得好!谢谢

蒂姆:简单。仅在使用

>> matlab2tikz( 'myfile.tikz', '身高', '\ figureheight', '宽度', '\ figurewidth');

您所有的数据和设置\ figureheight和\ figurewidth一旦你的LaTeX文件内。
见README。

您是否可以使图的大小始终相同,以便在报表中更容易控制它以保持一致性。

谢谢 - 伟大的工作!

尼科·施勒默

人们总是在补丁来matlab2tikz兴趣!你可以在GitHub上发送拉入请求,或通过邮寄的补丁(得到正确记录使用git格式补丁),或创建GitHub上拉请求。我不介意无论哪种方式。

埃克

三件事:
1 .:真棒一段代码。确实节省了大量的时间和工作。
2:我通过设置一个宽度的HIGHT“\ pgfplotset {}”在我的序言,只是更改了几个地块。Matlab2tikz总是输出宽度和唤起注意参数在这种情况下不是非常有用的。
(刚发现围绕提供了良好的工作,为的是维基https://github.com/nschloe/matlab2tikz/wiki- “\ newlength和\ setlength”)
3:我补充支持VOR的“金宝appLegend.Orientation”参数以及为“Loaction = SouthOutside”和“位置= NorthOutside”,你的代码有兴趣吗?凡我应该把它?

嗨塞巴斯蒂安,

在#-issue现在应该是固定的;感谢您的报告。
目前,我认为pgfplots没有任何控制图例框纵横比的方法,但是您可能需要浏览一下它的手册。如果你发现什么,告诉我!

听起来在第一次尝试大。

一方面,如果我的xlabel是xlabel( '#K')在MATLAB中,所生成的文件是越野车(手动改变xlabel = {·K}到xlabel = {\·K})在tikz文件)。

如何保持图例的纵横比?

很不错的剧本!我一直在使用MATLAB EPS导出,然后使用Inkscape编辑并保存为PDF +胶乳溶液,到目前为止,但它以优雅的方式解决了我以前的解决方案的标签定位问题,这是一个简单好!
谢谢!

泰铢

伊戈尔

嗨尼科,
再次感谢伟大的工作。

几个请求:
1.是否有可能有一个命令行开关把所有Matlab的图例项只是{},而不是$$ + \文本{}?我的传说大多无配方,这样我就可以更容易格式化他们,如果他们在这个形状来通过matlab2tikz。

2.我建议把“定义自定义颜色”一节\ {开始} tikzpicture之前,因为如果您在无花果的传说。字幕(通过使用\标签{}和\ REF {}),乳胶将没有这个报告错误,因为\ definecolor仅作用域tikzpicture。

三。与之相关的是2:有没有可能自动标注地块?例如{filename-p1}、{filename-p2}、,。。。。

谢谢,
伊戈尔

嗨尼科,
最好使用filename作为uiputfile的路径(第206、212、218行,…),这样文件可以存储在当前文件夹之外的其他位置。

谢谢您。

我已经通过电子邮件发送你我的修改嵌套函数的drawText为了应对文本对象的问题用Matlab TEXT命令创建的。如果你同意这一点,你可以更新您的代码,并把我从修改每次有新的版本。谢谢。
穆赫塔尔

@Alexander克莱恩:我实现了一个或两件事情,你可能想看看最新版本。
对于未来的变化,这是最好的,在提交错误报告https://github.com/nschloe/matlab2tikz/.

那么,该文件可能不是最新的所有的时间。
一般来说它总是值得采取偷看https://github.com/nicki/matlab2tikz/.
所有的选项都还列出了源文件本身当然的,所以你可以随时看线125个FF。应该是自我explainatory。

1)不知道我理解你的意思。
2) 你是说图像的宽度?有“width”和“height”参数。
3)选项 'mathmode'。

一般来说,如果你发现了一个bug或类似,很容易让我跟进GitHub上。

谢谢你,尼科,剧本是一件艺术品。我是一名经验丰富的LaTeX用户(我以前写我的论文),及其在Matlab很舒服(减去任何主要剧情代)。因此,当我发现你的代码,你能想象多么激动我是因为我在这个时候建立报表生成脚本。这将是很容易的,我曾经在这个文件交换所遇到的最好的剧本,如果我能找到如何:
1)在x轴标签取下10 ^ 5(我也使用datetick并已通过加入穆赫塔尔建议到胶乳前导无济于事)。
2)预定义的线宽,图像宽高比,和某种缩放参数,使在tikz输出宽度和高度参数,例如

宽度= 0.90 \文本宽度,
高度= 0.35 \ textHeight不同

3)某种的我怎么能指定标题与否,轴标签,图例不会在LaTeX的数学模式解释(或者你的理解认为,我硬编码这个)?

也许这样的功能是受支持的(如Petter所提到的),金宝app但是快速浏览m文件并没有给我提供太多的起点。

@Alexander克莱恩,我想知道,如果你的改进,有没有被笔者实现的?

感谢所有的一切,
干杯!

皮特

这是因为matlab2tikz包裹着我的x和ylabels与$ .. $。我删除了一段代码,并得到了我的预期结果。

DM

@佩特:你有一个示例代码,xlabel中的空格不起作用?在我的所有数据中,它都工作得很好,所以我认为它与您的代码有关。

否则,你不使用\与​​TikZ数字includegraphics(除非你预先编译为PDF或东西),但使用已经可以将设置图形的尺寸(这些命令也记录在这里的描述上的宽度/高度的命令FEX)。

D.

皮特

在xlabel空间似乎并不工作

皮特

似乎它已经支持,但没有记录。金宝app

皮特

看起来不错,但是我缺少保持纵横比和改变宽度的功能。E、 g.,\includegraphics[宽度=3cm]{图像}

帮助不包括可选参数。

大家好!

首先:感谢您Schlömer先生matlab2tikz。这是一个伟大的一块软件。

不幸的是,我曾在64位Linux系统上Matlab的2009年b使用版本0.0.7时,存在以下问题:
1.标签和标题不能用的sprintf写,因为它在那里的细胞。
2。Barplots不起作用,因为有一个输入错误(例如m2t丢失)
3.我需要绘制时间信号具有非常小的差异。这就是为什么在pgfplots坐标的精度是不够的。
4.当与几千个数据点绘图数据系列,它采取分钟写入文件(由于strcat的和LOPP对于i = 1:长度(XDATA)

我已经修改了其负责的这个问题的文件:
1. e.g:

如果iscell(标题)
标题=标题{:};
结束

2。为我更换
barplotTotalNumber=barplotTotalNumber+1;

m2t.barplotTotalNumber = m2t.barplotTotalNumber + 1;
帮助
三。我为脚本添加了一个选项,您可以在其中添加写入pgf文件时使用的格式字符串的精度
4.我换成for循环与repmat建设是减少计算时间很多。

如果有人遇到同样的问题,我可以将这个文件发送给施洛默先生(如果他喜欢添加更改)。还是有更好的办法来解决这个问题?

亲切的问候

亚历山大

DM

伊戈尔

伟大的作品!
谢谢!

Wondeful工具。今天,我尝试过了,它可能是没有比这更好的。我面临着同样的问题(那恼人的X10 ^ 5),由保罗提到,但是这并没有关系,但malab2tikz.m的pgfplot方式处理的刻度标记。我发现了一个解决方案,不过,我想和大家分享,并要求尼科将其包括在自述文件。
添加到您的乳胶文件前
\ pgfplotsset {X蜱标签样式= {/ PGF /数字格式/固定}}
\pgfplotsset{y tick label style={/pgf/number format/fixed}
当然,你并不需要,如果你是快乐与X10 ^ 5符号。

鹤伊

大家好 !我叫鹤伊。我是studient4年胡志明工业大学的。我有一个项目毕业处理器图像(产品分类的(闭链器)
帮助我。我用的是PLC s7200,matlab 7.1

保罗

嗨,

惊人的工具!非常感谢你。

不过,我有一个恼人的问题。我从matlab中导入了坐标序列日期,然后使用xtick重新标记。工作正常,除了当pgf绘制图形时,右下角有一个恼人的x10^5(它必须来自于matlab串行日期值)

即,我的代码是:

\开始{tikzpicture}

\开始{轴}[%
视图= {0} {90},
仅缩放轴,
宽度= \ figurewidth,
高度= \ figureheight,
XMIN = 724642,XMAX = 733408,
YMIN = 0,YMAX = 3.5,
XTICK = {724642,725373,726103,726834,727564,728295,729025,729756,730486,731217,731947,732678,733408}
xticklabels = {84,86,88,90,92,94,96,98,00,02,04,06,08}

可能有人请帮助我?

最好的祝福
保罗

DM

克雷格

很棒的工具,图出来的很棒!

一个真正有用的软件包。我希望它很快就会支持每一个情节金宝app类型(特别是分散型;-))!

我已经广泛地使用这个提交来添加绘图到我的乳胶文件和它的工作方式一样。谢谢你的意见!

如果你解释说,一个需要上传PGF和pgfplots乳胶包和呼叫\ usepackage {} pgfplots在你的LaTeX文档的序言这会好得多。之后,它似乎工作好了。

更新

1.0.0.0

在M2T历史上最大的更新;有关详细信息,请参阅https://github.com/matlab2tikz/matlab2tikz/blob/master/CHANGELOG.md

1.50.0.0条

更新说明

1.49.0.0条

更新的GitHub库

1.48.0.0

目前的贡献联系更加突出

1.47.0.0

加入GitHub的链接

1.46.0.0

更新0.4.7

1.45.0.0

更新0.4.6

1.44.0.0

更新0.4.5

1.43.0.0

更新0.4.4

1.42.0.0

更新0.4.3

1.40.0.0条

更新标识

1.38.0.0

更新0.4.2

1.36.0.0

更新0.4.1

1.35.0.0

更新0.4.0

1.34.0.0条

更新0.3.3

1.33.0.0条

升级到0.3.2(这次是真的)

1.30.0.0

更新0.3.0

MATLAB版本兼容性
创建与R2014b
与任何版本兼容
平台兼容性
视窗 苹果系统 Linux系统