我正在使用 LyX,最近发现 mathcha.io 可以让您将轻松创建的图像和图表转换为 tikz 代码。
我尝试使用它,但在编译时它只显示某些东西;例如,它渲染一些逻辑门电路,但不会加载图表(2D、3D 等...),(我要补充一点,要在 mathcha.io 中实现这一点,您首先需要通过输入“\drawing”进入图表/绘图环境)所以我相信我一定是缺少一些包,下面是 mathcha.io 生成的代码示例,它应该可以在 LyX 中的 TeX 代码环境中工作,但不会渲染:
\tikzset{every picture/.style={line width=0.75pt}} %set default line width to 0.75pt
\begin{tikzpicture}[x=0.75pt,y=0.75pt,yscale=-1,xscale=1] %uncomment if require:
\path (0,300); %set diagram left start at 0, and has height of 300
\end{tikzpicture}
下面是一个可以正确渲染的代码示例(虽然我不知道如何轻松地将其放置在像 LyX 文档中那样的精确位置):
\tikzset{every picture/.style={line width=0.75pt}} %set default line width to 0.75pt
\begin{tikzpicture}[x=0.75pt,y=0.75pt,yscale=-1,xscale=1] %uncomment if require: \path (0,300); %set diagram left start at 0, and has height of 300
%Shape: Axis 2D [id:dp7108345265772975]
\draw (50,162) -- (150,162)(60,72) -- (60,172) (143,157) -- (150,162) -- (143,167) (55,79) -- (60,72) -- (65,79) ;
%Shape: Parabola [id:dp7278250032221381]
\draw (25,122) .. controls (48.33,175.33) and (71.67,175.33) .. (95,122) ;
%Shape: Wave [id:dp767344400003916]
\draw (164.99,135.62) .. controls (161.1,125.31) and (157.38,115.48) .. (152.85,115.4) .. controls (148.33,115.32) and (144.26,125.01) .. (140,135.18) .. controls (135.74,145.35) and (131.67,155.03) .. (127.14,154.95) .. controls (122.62,154.87) and (118.9,145.05) .. (115,134.73) .. controls (111.11,124.42) and (107.38,114.59) .. (102.86,114.51) .. controls (100.2,114.47) and (97.69,117.8) .. (95.21,122.62) ;
\end{tikzpicture}
我假设 mathcha.io 中的图表是使用某种只能通过网站本身访问的方式生成的,因此当您尝试复制 Tikz 代码时,它会丢失其中本来包含的任何信息。
答案1
你需要\usepackage{tikz}
在序言中提出一种或另一种方法。
首先,让我们看一下 LaTeX 代码。如果我像这样复制你的两个代码:
\documentclass[10pt,border=3mm,tikz]{standalone}
\begin{document}
\tikzset{every picture/.style={line width=0.75pt}} %set default line width to 0.75pt
\begin{tikzpicture}[x=0.75pt,y=0.75pt,yscale=-1,xscale=1] %uncomment if require:
\path (0,300); %set diagram left start at 0, and has height of 300
\end{tikzpicture}
\tikzset{every picture/.style={line width=0.75pt}} %set default line width to 0.75pt
\begin{tikzpicture}[x=0.75pt,y=0.75pt,yscale=-1,xscale=1] %uncomment if require: \path (0,300); %set diagram left start at 0, and has height of 300
%Shape: Axis 2D [id:dp7108345265772975]
\draw (50,162) -- (150,162)(60,72) -- (60,172) (143,157) -- (150,162) -- (143,167) (55,79) -- (60,72) -- (65,79) ;
%Shape: Parabola [id:dp7278250032221381]
\draw (25,122) .. controls (48.33,175.33) and (71.67,175.33) .. (95,122) ;
%Shape: Wave [id:dp767344400003916]
\draw (164.99,135.62) .. controls (161.1,125.31) and (157.38,115.48) .. (152.85,115.4) .. controls (148.33,115.32) and (144.26,125.01) .. (140,135.18) .. controls (135.74,145.35) and (131.67,155.03) .. (127.14,154.95) .. controls (122.62,154.87) and (118.9,145.05) .. (115,134.73) .. controls (111.11,124.42) and (107.38,114.59) .. (102.86,114.51) .. controls (100.2,114.47) and (97.69,117.8) .. (95.21,122.62) ;
\end{tikzpicture}
\end{document}
它呈现:
- 每个
standalone
班级都会放一页tikzpicture
- 第一个基本上包含...一个点
\path (0,300);
- 而第二个看起来还不错
相比之下,LyX 似乎对这段代码更加固执:
Documents / Settings / Preamble
:\usepackage{tikz}
添加- 将第二段代码复制到红框中无法正确呈现预览
- 结果我必须输入返回才能
\draw
手动“释放”已被注释掉的语句(??? LyX......)
不幸的是我无法编译,但这里可供参考:
Lyx 文件:复制到 ASCII 编辑器中,保存,加载,应该在您的位置进行编译:
#LyX 2.3 created this file. For more info see http://www.lyx.org/
\lyxformat 544
\begin_document
\begin_header
\save_transient_properties true
\origin unavailable
\textclass article
\begin_preamble
\usepackage{tikz}
\end_preamble
\use_default_options true
\maintain_unincluded_children false
\language english
\language_package default
\inputencoding auto
\fontencoding global
\font_roman "default" "default"
\font_sans "default" "default"
\font_typewriter "default" "default"
\font_math "auto" "auto"
\font_default_family default
\use_non_tex_fonts false
\font_sc false
\font_osf false
\font_sf_scale 100 100
\font_tt_scale 100 100
\use_microtype false
\use_dash_ligatures true
\graphics default
\default_output_format default
\output_sync 0
\bibtex_command default
\index_command default
\paperfontsize default
\spacing single
\use_hyperref false
\papersize default
\use_geometry false
\use_package amsmath 1
\use_package amssymb 1
\use_package cancel 1
\use_package esint 1
\use_package mathdots 1
\use_package mathtools 1
\use_package mhchem 1
\use_package stackrel 1
\use_package stmaryrd 1
\use_package undertilde 1
\cite_engine basic
\cite_engine_type default
\biblio_style plain
\use_bibtopic false
\use_indices false
\paperorientation portrait
\suppress_date false
\justification true
\use_refstyle 1
\use_minted 0
\index Index
\shortcut idx
\color #008000
\end_index
\secnumdepth 3
\tocdepth 3
\paragraph_separation indent
\paragraph_indentation default
\is_math_indent 0
\math_numbering_side default
\quotes_style english
\dynamic_quotes 0
\papercolumns 1
\papersides 1
\paperpagestyle default
\tracking_changes false
\output_changes false
\html_math_output 0
\html_css_as_file 0
\html_be_strict false
\end_header
\begin_body
\begin_layout Standard
\begin_inset ERT
status open
\begin_layout Plain Layout
\backslash
tikzset{every picture/.style={line width=0.75pt}} %set default line width
to 0.75pt
\end_layout
\end_inset
\end_layout
\begin_layout Standard
\begin_inset ERT
status open
\begin_layout Plain Layout
\backslash
begin{tikzpicture}[x=0.75pt,y=0.75pt,yscale=-1,xscale=1] %uncomment if require:
\backslash
path (0,300); %set diagram left start at 0, and has height of 300 %Shape:
Axis 2D [id:dp7108345265772975]
\end_layout
\begin_layout Plain Layout
\end_layout
\begin_layout Plain Layout
\backslash
draw (50,162) -- (150,162)(60,72) -- (60,172) (143,157) -- (150,162) --
(143,167) (55,79) -- (60,72) -- (65,79) ; %Shape: Parabola [id:dp727825003222
1381]
\end_layout
\begin_layout Plain Layout
\end_layout
\begin_layout Plain Layout
\backslash
draw (25,122) ..
controls (48.33,175.33) and (71.67,175.33) ..
(95,122) ; %Shape: Wave [id:dp767344400003916]
\backslash
draw (164.99,135.62) ..
controls (161.1,125.31) and (157.38,115.48) ..
(152.85,115.4) ..
controls (148.33,115.32) and (144.26,125.01) ..
(140,135.18) ..
controls (135.74,145.35) and (131.67,155.03) ..
(127.14,154.95) ..
controls (122.62,154.87) and (118.9,145.05) ..
(115,134.73) ..
controls (111.11,124.42) and (107.38,114.59) ..
(102.86,114.51) ..
controls (100.2,114.47) and (97.69,117.8) ..
(95.21,122.62) ;
\end_layout
\begin_layout Plain Layout
\backslash
end{tikzpicture}
\end_layout
\end_inset
\end_layout
\end_body
\end_document