我想策划一个3D 图和tikz 的导入 csv 数据。一切正常。
但是,我想让整个图形更大,使其适合文本宽度,并更好地适应文档流。有人知道这是怎么回事吗?我想的是这样的:
\includegraphics[width=\linewidth]{...}
但我找不到类似的东西。如果能得到任何帮助我都会非常高兴!干杯!:)
这是我的代码:
\documentclass{article}
\usepackage[left=2.5cm,right=2.5cm,top=2.5cm,bottom=3.5cm,]{geometry}
\usepackage{lipsum}
\usepackage{tikz}
\usepackage{pgfplots}
\usepackage{pgfplotstable}
\pgfplotsset{compat=1.5}
\begin{document}
\lipsum[1]
\begin{figure}[h!]
\centering
\begin{tikzpicture}
\begin{axis}[
view = {50}{45},
ymin=0.0068,
ymax=0.01,
zmin=15,
zmax=22,
ytick={0.007, 0.008, 0.009, 0.01},
ztick={15, 18.5, 22},
grid,
grid style={semithick, densely dotted},
xlabel={$f_0$ in GHz},
ylabel={$k$},
zlabel={$BP_1$ in mm},
]
\addplot3[color = teal, only marks, ultra thick] table[x=f0, y=k, z=para1, col sep=semicolon, /pgf/number format/read comma as period] {3D_k12.csv};
\end{axis}
\end{tikzpicture}
\caption{\label{fig:3D} sample caption}
\end{figure}
\lipsum[1]
\end{document}
答案1
我建议您将环境的宽度(也可能是高度)选项设置axis
为width=0.9\textwidth
如下所示的内容。
这不会将图形的宽度精确地设置为\textwidth
,但您可以分别将水平和垂直外观更改为您喜欢的任何外观。
\documentclass{article}
\usepackage[left=2.5cm,right=2.5cm,top=2.5cm,bottom=3.5cm,]{geometry}
\usepackage{lipsum}
\usepackage{tikz}
\usepackage{pgfplots}
\usepackage{pgfplotstable}
\pgfplotsset{compat=1.5}
\begin{document}
\lipsum[1]
\begin{figure}[h!]
\centering
\begin{tikzpicture}
\begin{axis}[
view = {50}{45},
width=0.9\textwidth,
height=0.5\textwidth,
ymin=0.0068,
ymax=0.01,
zmin=15,
zmax=22,
ytick={0.007, 0.008, 0.009, 0.01},
ztick={15, 18.5, 22},
grid,
grid style={semithick, densely dotted},
xlabel={$f_0$ in GHz},
ylabel={$k$},
zlabel={$BP_1$ in mm},
]
\addplot3[color = teal, only marks, ultra thick] table[x=f0, y=k, z=para1, col sep=semicolon, /pgf/number format/read comma as period] {3D_k12.csv};
\end{axis}
\end{tikzpicture}
\caption{\label{fig:3D} sample caption}
\end{figure}
\lipsum[1]
\end{document}