我不确定此问题是否与 R 或 tikzDevice 有关。
我只使用R
和命令plot(1)
。
生成的图形的行为类似于矢量图形。它的宽高比取决于它所显示的窗口的比例。
我可以在调用plot()
时设置纵横比明确吗?
xlim
不会影响图形输出本身 - 只是内容(x轴上的数字)。
也许tikzDevice有办法修复宽高比? 我和tikzDevice一起使用的脚本看起来像这样。
#!/usr/bin/R -f
# load the library
library(tikzDevice)
# the output file
tikz('plot.tex')
#
plot(1, xlab='X-Axis', ylab='Y-Axis')
dev.off()
@Moderators:请添加标签' tikzDevice'。
答案 0 :(得分:-1)
帮助页面?plot
包含asp
参数,该参数用于控制宽高比(更多详情位于?plot.window
页面上)。
我不知道tikz设备是否以不同方式处理(因为绘图的高度和宽度可能会在创建绘图后发生变化),但是开始的地方是尝试类似:
plot(1, asp=1)
然后确保最终文档中绘图区域的大小相同。
修改强>
当您只绘制1点时,您可能看不到绘图中的太多变化,但请尝试以下命令来查看设置asp
的效果:
theta <- seq(0,2*pi, length=200)
plot(cos(theta),sin(theta))
plot(cos(theta),sin(theta), asp=1)
对于默认的常规R和Rstudio(至少在我的计算机上),2个图中有明显的差异。我没有尝试使用tikz设备。
您也可以尝试使用TeachingDemos软件包中的squishplot
函数(我从未尝试使用tikz设备,但在常规R中它可以作为设置宽高比的另一种方式):
library(TeachingDemos)
op <- squishplot(c(-1,1),c(-1,1), asp=1)
plot(cos(theta),sin(theta))
par(op)