2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Картинки как attachments и tikz
Сообщение12.02.2014, 14:31 
Заслуженный участник
Аватара пользователя


31/01/14
11312
Hogtown
1) Я не могу добавлять attachments (речь идет о геометрических картинках) "You cannot post attachments on this forum". Было бы хорошо, чтобы в правилах форума был освещен вопрос о привилегиях (да, я могу использовать внешнюю графику, но использование ее IMHO на форумах нежелательно, т.к. она может пропасть).

2) Где-то было упомянуто как преимущество используемого здесь форумного TeX над MathJax что последний не поддерживает tikz (что, конечно, верно т.к MJ поддерживает только формулы (ну и xy–графику). Я заключил что на форуме поддерживается tikz и действительно, он поддерживается для простых рисунков. Но вот такое (шахматная доска)

Код:
[math]$\begin{tikzpicture}[scale=.3]
\draw (0,0) grid (8,8);
\foreach \x in {0,1,2,3} \foreach \y in {0,1,2,3} \fill [gray] (2*\x,2*\y) rectangle (2*\x+1,2*\y+1);
\foreach \x in {0,1,2,3} \foreach \y in {0,1,2,3} \fill [gray] (2*\x+1,2*\y+1) rectangle (2*\x+2,2*\y+2);
\end{tikzpicture}$[/math]


дает

$\begin{tikzpicture}
\draw (0,0) grid (8,8);
\foreach \x in {0,1,2,3} \foreach \y in {0,1,2,3} \fill [gray] (2*\x,2*\y) rectangle (2*\x+1,2*\y+1);
\foreach \x in {0,1,2,3} \foreach \y in {0,1,2,3} \fill [gray] (2*\x+1,2*\y+1) rectangle (2*\x+2,2*\y+2);
\end{tikzpicture}$

Другие эксперименты показали что тут дело в сложности картинки.

Но в любом случае tikz без автоматического подключения gnuplot не позволяет графиков:

Код:
[math]$\begin{tikzpicture}[scale=.3]
\draw[very thin,color=blue] (-10,-6.1) grid (10,6.29);
\draw[ultra thick,color=blue] plot[id=sin] function{sin(x)} node[right] {$f(x) = \sin x$};
\end{tikzpicture}$[/math]


дает

$\begin{tikzpicture}[scale=.3]
\draw[very thin,color=blue] (-10,-6.1) grid (10,6.29);
\draw[ultra thick,color=blue] plot[id=sin] function{sin(x)} node[right] {$f(x) = \sin x$};
\end{tikzpicture}$

т.е. сам график терятся

 Профиль  
                  
 
 Re: Картинки как attachments и tikz
Сообщение13.02.2014, 01:33 
Заслуженный участник
Аватара пользователя


31/01/14
11312
Hogtown
Кроме того что форумный вариант tikz не поддерживает команды \foreach, он сыпется на \clip и \begin{scope} \end{scope}

Код:
[math]$\begin{tikzpicture}[scale=.5]
\fill [red, even odd rule] (0,2) circle (2.5) circle (3);
\fill [blue, even odd rule] (1.732,-1) circle (2.5) circle (3);
\fill [green, even odd rule] (-1.732,-1) circle (2.5) circle (3);

%\begin{scope}
%\clip  (.9,-.6) circle (.5);
\fill [red, even odd rule] (0,2) circle (2.5) circle (3);
%\end{scope}

%\clip (-2.6,1.5) circle (.5);
\fill [red, even odd rule] (0,2) circle (2.5) circle (3);
\end{tikzpicture}$[/math]


дает

$\begin{tikzpicture}[scale=.5
\fill [red, even odd rule] (0,2) circle (2.5) circle (3);
\fill [blue, even odd rule] (1.732,-1) circle (2.5) circle (3);
\fill [green, even odd rule] (-1.732,-1) circle (2.5) circle (3);

%\begin{scope}
%\clip  (.9,-.6) circle (.5);
\fill [red, even odd rule] (0,2) circle (2.5) circle (3);
%\end{scope}

%\clip (-2.6,1.5) circle (.5);
\fill [red, even odd rule] (0,2) circle (2.5) circle (3);
\end{tikzpicture}$

но если я uncomment строчки с \clip или {scope} то результатом будет та же ошибка: очевидно TeX спотыкается и png не генерирует, a форум не находит графического файла

PS В обычном (т.е. не форумном) TeX
1) на самом деле разумеется TeX генерирует либо ps, либо pdf, который обрезается (напр. используя pdfcrop--часть TeXLive, а затем конвертируется в png.

2) Далеко не всегда tikz сам по себе работает, нужно еще загрузить пакет pgf (tikz это упрощенный frontend для него)

3) Иной раз нужно загрузить определенные библиотеки (части pgf, которых pgf автоматически не грузит).

4) Есть много пакетов, надстраивающих pgf, напр. для планиметрических чертежей удобен tkz-euclide.

 Профиль  
                  
 
 Re: Картинки как attachments и tikz
Сообщение20.02.2014, 15:53 
Заслуженный участник
Аватара пользователя


31/01/14
11312
Hogtown
В сообщении #828836 я поместил картинку сделанную с помощью остроено с помощью tikz и tkz-euclide


Код:
\documentclass[12pt]{memoir}
\usepackage{pgf,tikz,tkz-euclide}
\pagestyle{empty}

\begin{document}

\begin{tikzpicture}
\tkzDefPoint(0,0){O};
\tkzDefPoint(-3,0){A};
\tkzDefPoint(3,0){B};
\tkzDefPoint(4,7){u};
\begin{scope}[xscale=5/4]
\tkzInterLC[R](O,u)(O,4cm) \tkzGetFirstPoint{C};
\tkzInterLC[R](A,C)(O,4cm) \tkzGetSecondPoint{M};
\tkzInterLC[R](B,C)(O,4cm) \tkzGetFirstPoint{N};
\tkzDefLine[orthogonal=through M](O,M)\tkzGetPoint{m};
\tkzDefLine[orthogonal=through N](O,N)\tkzGetPoint{n};
\tkzInterLL(M,m)(N,n) \tkzGetPoint{K};
\tkzDefMidPoint(C,K) \tkzGetPoint{L};

\draw (O) circle (4);
\draw (M)--(C)--(N);
\draw (M)--(K)--(N);
\draw (C)--(K);
\end{scope}

\tkzDefCircle[circum](A,B,C) \tkzGetPoint{Q};
\fill[red] (Q) circle (.05) node[right] {$Q$};
\tkzDrawCircle[color=red](Q,B);

%%%%Alternative elements of construction
\draw [ultra thick, yellow ,dotted] (O) ellipse (5 and 4);
\tkzDefLine[bisector](B,N,A) \tkzGetPoint{s};   
\tkzDefLine[orthogonal=through N](s,N) \tkzGetPoint{k};
\tkzDrawLine [ultra thick, color=yellow,dotted,add=0 and 3](N,k);
%%%%%

\fill (A) circle (.05) node[left] {$A$};
\fill (B) circle (.05) node[right] {$B$};
\fill (C) circle (.05) node[below] {$C$};
\fill (M) circle (.05) node[above] {$M$};
\fill (N) circle (.05) node[above] {$N$};
\fill (K) circle (.05) node[above] {$K$};
\fill (L) circle (.05) node[right] {$L$};
\end{tikzpicture}
\end{document}



Изображение

-- 20.02.2014, 08:02 --

Картинка с помощью полного кода из сообщения #825777

Изображение

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 3 ] 

Модераторы: cepesh, Forum Administration



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group