Đánh dấu bằng cách kẻ sọc một miền giới hạn bởi các đồ thị

1. Đánh dấu sọc một đa giác.

Ví dụ, bạn có một đa giác nối các điểm (1,0)(1,0.84)(2,0.47)(2,0). Để đánh dấu sọc cho đa giác này, các bạn viết:

\pspolygon[fillstyle=vlines](1,0)(1,0.84)(2,0.47)(2,0)

Đọan code sau đây được biên dịch bằng LaTeX – dvips – ps2pdf (Quick build trong TeXmaker)

 \documentclass[10pt]{article} 
 \usepackage{pstricks-add} 
 \usepackage[paperwidth=5cm,paperheight=5.5cm,top=0cm,bottom=0cm,left=0cm,right=0cm]{geometry} 
 \pagestyle{empty} 
 \begin{document} 
 \psset{xunit=2.0cm,yunit=2.0cm,algebraic=true,dotstyle=o,dotsize=3pt 0,linewidth=0.8pt,arrowsize=3pt 2,arrowinset=0.25} 
 \begin{pspicture*}(0.5,-0.5)(5.5,2) 
 \pspolygon[fillstyle=vlines](1,0)(1,0.84)(2,0.47)(2,0) 
 \psaxes[labelFontSize=\scriptstyle,xAxis=true,yAxis=true,Dx=5,Dy=5,ticksize=-2pt 0,subticks=2]{->}(0,0)(0.5,-0.5)(2.5,1.5) 
 \psplot[plotpoints=200]{0.5}{2.5}{1/x} 
 \psline(1,-0.5)(1,1.5) 
 \psline(2,-0.5)(2,1.5) 
 \psplot{0.81}{2.5}{(--1.68-0.51*x)/1.38} 
 \rput[tl](1.05,-.25){$x=1$} 
 \rput[tl](2.05,-.25){$x=2$} 
 \end{pspicture*} 
 \end{document} 

2. Đánh dấu sọc một miền giới hạn bởi nhiều đường.

Dạng đơn giản:

\pscustom[fillstyle=hlines]{
\psplot{0}{3}{-x^2+2*x}
\psplot{3}{0}{-x}
}

\documentclass[10pt]{article}
\usepackage{pstricks-add}
\usepackage[paperwidth=5.5cm,paperheight=6.5cm,top=0cm,bottom=0cm,left=0cm,right=0cm]{geometry}
\pagestyle{empty}
\begin{document}
\psset{xunit=1.0cm,yunit=1.0cm,algebraic=true,dotstyle=o,dotsize=3pt 0,linewidth=0.8pt,arrowsize=3pt 2,arrowinset=0.25}
\begin{pspicture*}(-1,-4)(4,2)
\psaxes[labelFontSize=\scriptstyle,xAxis=true,yAxis=true,Dx=1,Dy=1,ticksize=-2pt 0,subticks=2]{->}(0,0)(-.9,-3.9)(4,2)
\pscustom[fillstyle=hlines]{
\psplot{0}{3}{-x^2+2*x}
\psplot{3}{0}{-x}
}
\psplot{-1}{0}{-x^2+2*x}
\psplot{-1}{0}{-x}
\psplot{3}{3.5}{-x^2+2*x}
\psplot{3}{4}{-x}
\psline[linestyle=dashed,dash=1pt 1pt](3,0)(3,-3)
\psline[linestyle=dashed,dash=1pt 1pt](3,-3)(0,-3)
\psdots[dotstyle=*,linecolor=darkgray](0,0)
\rput[tl](3.8,0.4){$x$}
\rput[tl](0.2,1.8){$y$}
\rput[tl](0.2,-0.4){$O$}
\end{pspicture*}
\end{document}
Dạng phức tạp hơn:

Bước 1: Vẽ hình bình thường bằng geogebra và save thành file pst như đọan code dưới đây:

Bước 2: Từ hòanh độ 1 đến hòanh độ 2.5 \psplot{1}{2.5}{x^2-4*x+5} (trên) sau đó \psplot{2.5}{1}{4-2*x} (dưới). Tương tự từ hoành độ 2.5 đến hòanh độ 4 \psplot{2.5}{4}{x^2-4*x+5} (trên) \psplot{4}{2.5}{-11+4*x} (dưới)

Tổng hợp (vẽ liên tiếp theo chu trình khép kín):

\pscustom[fillstyle=vlines]{
\psplot{1}{2.5}{x^2-4*x+5}
\psplot{2.5}{4}{x^2-4*x+5}
\psplot{4}{2.5}{-11+4*x}
\psplot{2.5}{1}{4-2*x}
}

\documentclass[10pt]{article}
\usepackage{pstricks-add}
\usepackage[paperwidth=6.5cm,paperheight=8.5cm,top=0cm,bottom=0cm,left=0cm,right=0cm]{geometry}
\pagestyle{empty}
\begin{document}
\newrgbcolor{xdxdff}{0.49 0.49 1}
\psset{xunit=1.0cm,yunit=1.0cm,algebraic=true,dotstyle=o,dotsize=3pt 0,linewidth=0.8pt,arrowsize=3pt 2,arrowinset=0.25}
\begin{pspicture*}(-.8,-1.9)(5,6)
\psaxes[labelFontSize=\scriptstyle,xAxis=true,yAxis=true,Dx=1,Dy=1,ticksize=-2pt 0,subticks=2]{->}(0,0)(-1,-2)(5,6)
\pscustom[fillstyle=vlines]{
\psplot{1}{2.5}{x^2-4*x+5}
\psplot{2.5}{4}{x^2-4*x+5}
\psplot{4}{2.5}{-11+4*x}
\psplot{2.5}{1}{4-2*x}
}
\psplot{-1}{1}{4-2*x}
\psplot{4}{4.5}{-11+4*x}
\psplot{-1}{1}{x^2-4*x+5}
\psplot{4}{5}{x^2-4*x+5}
\psline[linestyle=dashed,dash=2pt 2pt](0,-1)(2.5,-1)
\psline[linestyle=dashed,dash=2pt 2pt](2.5,-1)(2.5,1.25)
\psdots[dotstyle=*,linecolor=xdxdff](1,2)
\psdots[dotstyle=*,linecolor=xdxdff](4,5)
\rput[tl](4.6,0.4){\Large\textbf{\textit{x}}}
\rput[tl](0.2,5.8){\Large\textbf{\textit{y}}}
\rput[tl](4.1,5.4){\Large \textbf{\textit{B}}}
\rput[tl](1.1,2.5){\Large \textbf{\textit{A}}}
\rput[tl](0.1,0.4){\Large\textbf{\textit{O}}}
\psline[linestyle=dashed,dash=2pt 2pt](4,0)(4,5)
\psline[linestyle=dashed,dash=2pt 2pt](0,5)(4,5)
\psline[linestyle=dashed,dash=2pt 2pt](1,0)(1,2)
\psline[linestyle=dashed,dash=2pt 2pt](0,2)(1,2)
\psdot[dotstyle=o](0,0)
\end{pspicture*}
\end{document}

Tương tự:

\pscustom[fillstyle=vlines]{
\psplot{-2}{-.5}{x^2+2*x+3}
\psplot{-.5}{1}{x^2+2*x+3}
\psplot{1}{-.5}{4*x+2}
\psplot{-.5}{-2}{0}
}

\documentclass[10pt]{article}
\usepackage{pstricks-add}
\usepackage[paperwidth=5.5cm,paperheight=8.5cm,top=0cm,bottom=0cm,left=0cm,right=0cm]{geometry}
\pagestyle{empty}
\begin{document}
\psset{xunit=1.0cm,yunit=1.0cm,algebraic=true,dotstyle=o,dotsize=3pt 0,linewidth=0.8pt,arrowsize=3pt 2,arrowinset=0.25}
\begin{pspicture*}(-2.8,-0.9)(2,7)
\psaxes[labelFontSize=\scriptstyle,xAxis=true,yAxis=true,Dx=1,Dy=3,ticksize=-2pt 0,subticks=2]{->}(0,0)(-3,-0.9)(2,7)
\pscustom[fillstyle=vlines]{
\psplot{-2}{-.5}{x^2+2*x+3}
\psplot{-.5}{1}{x^2+2*x+3}
\psplot{1}{-.5}{4*x+2}
\psplot{-.5}{-2}{0}
}
\psplot{-3}{-2}{x^2+2*x+3}
\psplot{1}{2}{x^2+2*x+3}
\psline(-2,-0.9)(-2,7)
\psline[linestyle=dashed,dash=2pt 2pt](-0.5,0)(-0.5,2.25)
\psline[linestyle=dashed,dash=2pt 2pt](1,0)(1,6)
\psline[linestyle=dashed,dash=2pt 2pt](0,6)(1,6)
\rput[tl](1.1,6.1){\Large \textbf{\textit{A}}}
\rput[tl](1.6,0.4){\Large\textbf{\textit{x}}}
\rput[tl](0.2,6.8){\Large\textbf{\textit{y}}}
\psdots[dotstyle=*,linecolor=black](1,6)
\psdots[dotstyle=*,linecolor=darkgray](-0.5,0)
\end{pspicture*}
\end{document}

Tương tự 2:

\pscustom[fillstyle=vlines]{
\psplot{0}{1}{2*sqrt(x)}
\psplot{1}{4}{2*sqrt(x)}
\psplot{4}{1}{2*x-4}
\psplot{1}{0}{-2*sqrt(x)}
}

\documentclass[10pt]{article}
\usepackage{pstricks-add}
\usepackage[paperwidth=6cm,paperheight=7cm,top=0cm,bottom=0cm,left=0cm,right=0cm]{geometry}
\pagestyle{empty}
\begin{document}
\psset{xunit=1.0cm,yunit=1.0cm,algebraic=true,dotstyle=o,dotsize=3pt 0,linewidth=0.8pt,arrowsize=3pt 2,arrowinset=0.25}
\begin{pspicture*}(-0.8,-2.5)(4.75,4.5)
\psaxes[labelFontSize=\scriptstyle,xAxis=true,yAxis=true,Dx=2,Dy=2,ticksize=-2pt 0,subticks=2]{->}(0,0)(-0.8,-2.5)(4.75,4.5)
\pscustom[fillstyle=vlines]{
\psplot{0}{1}{2*sqrt(x)}
\psplot{1}{4}{2*sqrt(x)}
\psplot{4}{1}{2*x-4}
\psplot{1}{0}{-2*sqrt(x)}
}
\psplot{1}{2}{-2*sqrt(x)}
\psplot{4}{5}{2*sqrt(x)}
\psplot{1}{0}{-2*sqrt(x)}
\psplot{4}{5}{2*x-4}
\psplot{0}{1}{2*x-4}
\psline[linestyle=dashed,dash=1pt 1pt](4,4)(0,4)
\psline[linestyle=dashed,dash=1pt 1pt](4,4)(4,0)
\psline[linestyle=dashed,dash=1pt 1pt](0,-2)(1,-2)
\psline[linestyle=dashed,dash=1pt 1pt](1,-2)(1,0)
\rput[tl](4.5,0.4){$x$}
\rput[tl](0.2,4.5){$y$}
\end{pspicture*}
\end{document}

Còn tiếp

5 responses to “Đánh dấu bằng cách kẻ sọc một miền giới hạn bởi các đồ thị

  1. Chào Thầy!
    Do em tìm không thấy phần liên quan nên xin cho phép em cm ở đây nhé. Em làm khóa luận mà khi tạo mục lục thì nó tự động xuất từ chương trở đi. Em muốn trong mục lục xuất hiện trang kí hiệu và lời mở đầu thì phải làm sao ạ? Em cảm ơn thầy!

    • Bước 1: Em tạo một bảng mục lục bằng macro \tableofcontents

      Biên dịch bằng pdflatex, latex tự động tạo ra một file toc, ví dụ file tex là t.tex thì ta có file t.toc

      Bước 2: Mở file toc

      \contentsline {chapter}{\numberline {1}70\% ki\IeC {\’\ecircumflex }n th\IeC {\’\uhorn }c h\IeC {\d o}c trong tr\IeC {\uhorn }\IeC {\`\ohorn }ng l\IeC {\`a} \IeC {\textquotedblleft }b\IeC {\h o} \IeC {\dj }i\IeC {\textquotedblright }}{5}
      \contentsline {chapter}{\numberline {2}MINH GI\IeC {\h A}NG}{7}
      \contentsline {section}{\numberline {2.1}70\% ki\IeC {\’\ecircumflex }n th\IeC {\’\uhorn }c h\IeC {\d o}c trong tr\IeC {\uhorn }\IeC {\`\ohorn }ng l\IeC {\`a} \IeC {\textquotedblleft }b\IeC {\h o} \IeC {\dj }i\IeC {\textquotedblright }}{7}
      \contentsline {section}{\numberline {2.2}MINH GI\IeC {\h A}NG}{8}
      \contentsline {chapter}{\numberline {3}TT – \IeC {\textquotedblleft }Kho\IeC {\h a}ng 70\%}{11}

      chèn hai dòng sau vào đầu file toc

      \contentsline {chapter}{\numberline {–} Danh mục các hình vẽ }{1}
      \contentsline {chapter}{\numberline {–} Danh mục các chú giải}{3}

      Các số 1 và 3 là trang thực sự của các danh mục nêu trên.

      Tóm lại file toc mới sẽ là:

      \contentsline {chapter}{\numberline {–} Danh mục các hình vẽ }{1}
      \contentsline {chapter}{\numberline {–} Danh mục các chú giải}{3}
      \contentsline {chapter}{\numberline {1}70\% ki\IeC {\’\ecircumflex }n th\IeC {\’\uhorn }c h\IeC {\d o}c trong tr\IeC {\uhorn }\IeC {\`\ohorn }ng l\IeC {\`a} \IeC {\textquotedblleft }b\IeC {\h o} \IeC {\dj }i\IeC {\textquotedblright }}{5}
      \contentsline {chapter}{\numberline {2}MINH GI\IeC {\h A}NG}{7}
      \contentsline {section}{\numberline {2.1}70\% ki\IeC {\’\ecircumflex }n th\IeC {\’\uhorn }c h\IeC {\d o}c trong tr\IeC {\uhorn }\IeC {\`\ohorn }ng l\IeC {\`a} \IeC {\textquotedblleft }b\IeC {\h o} \IeC {\dj }i\IeC {\textquotedblright }}{7}
      \contentsline {section}{\numberline {2.2}MINH GI\IeC {\h A}NG}{8}
      \contentsline {chapter}{\numberline {3}TT – \IeC {\textquotedblleft }Kho\IeC {\h a}ng 70\%}{11}

      Save file toc, mở file tex biên dịch. Em sẽ đạt ý nguyện.

      Lưu ý. Chỉ nên làm công việc này khi mọi việc đã xong vì latex thường sẽ cập nhật lại file toc một cách tự dộng.

  2. thưa thầy cho em hỏi: em muốn kẻ sọc một miền giới hạn bởi đa giác dịch ra pdf thì làm thế nào ạ? em đã chèn thử lệnh \pspolygon[fillstyle=vlines](1,0)(1,0.84)(2,0.47)(2,0) mà không được ạ? cụ thể bài của em là:

    \documentclass[10pt]{article}
    \usepackage[utf8]{vietnam}
    \usepackage{pgf,tikz}
    \usetikzlibrary{arrows}

    \begin{document}
    Vẽ đường kẻ sọc:\\

    \begin{tikzpicture}[line cap=round,line join=round,>=triangle 45,x=1.0cm,y=1.0cm]
    \draw[->,color=black] (-3.16,0.) — (4.32,0.);
    \foreach \x in {-3.,-2.,-1.,1.,2.,3.,4.}
    \draw[shift={(\x,0)},color=black] (0pt,2pt) — (0pt,-2pt) node[below] {\footnotesize $\x$};
    \draw[->,color=black] (0.,-3.16) — (0.,4.38);
    \foreach \y in {-3.,-2.,-1.,1.,2.,3.,4.}
    \draw[shift={(0,\y)},color=black] (2pt,0pt) — (-2pt,0pt) node[left] {\footnotesize $\y$};
    \draw[color=black] (0pt,-10pt) node[right] {\footnotesize $0$};
    \clip(-3.16,-2.08) rectangle (4.32,4.38);
    \draw (2.,-2.08) — (2.,4.38);
    \draw [domain=-3.16:4.32] plot(\x,{(–3.-0.*\x)/1.});
    \draw [domain=-3.16:4.32] plot(\x,{(–1.-1.*\x)/1.});
    \begin{scriptsize}
    \draw[color=black] (1.74,6.14) node {$a$};
    \draw[color=black] (-4.14,2.84) node {$b$};
    \draw[color=black] (-4.14,4.92) node {$c$};
    \end{scriptsize}
    \end{tikzpicture}

    \end{document}

    Nếu chèn vào câu lệnh \pspolygon[fillstyle=vlines](1,0)(1,0.84)(2,0.47)(2,0) thì không chạy được ạ?(mã của hình em lấy ở geogebra ạ)

    • Em muốn sử dụng \pscustom em phải export ra pstricks.

      Thầy không hiểu hình của em, chỉ lấy 4 điểm em đề nghị.

       
      \documentclass[10pt]{article}
      \usepackage{pstricks-add}
      \pagestyle{empty}
      \begin{document}
      \psset{xunit=3.0cm,yunit=3.0cm,algebraic=true,dimen=middle,dotstyle=o,dotsize=3pt 0,linewidth=0.8pt,arrowsize=3pt 2,arrowinset=0.25}
      \begin{pspicture*}(-0.67,-1.1)(5.5,2)
      \psaxes[labelFontSize=\scriptstyle,xAxis=true,yAxis=true,Dx=0.5,Dy=0.5,ticksize=-2pt 0,subticks=2]{->}(0,0)(-0.67,-1.1)(3,2)
      \psline(1.,0.84)(1.,0.)
      \psline(1.,0.)(2.,0.)
      \psline(1.,0.84)(2.,0.47)
      \psline(2.,0.47)(2.,0.)
      
      \psdots[dotstyle=*,linecolor=black](1.,0.)
      \psdots[dotstyle=*,linecolor=black](2.,0.)
      \psdots[dotstyle=*,linecolor=black](1.,0.84)
      \psdots[dotstyle=*,linecolor=black](2.,0.47)
      
      \pscustom[fillstyle=hlines]{
      \psplot{1}{2}{1.21-0.37*x}
      \psplot{2}{1}{0}
      }
      
      \end{pspicture*}
      \end{document}
      

  3. em cảm ơn thầy

Gửi phản hồi

Mời bạn điền thông tin vào ô dưới đây hoặc kích vào một biểu tượng để đăng nhập:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Log Out / Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Log Out / Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Log Out / Thay đổi )

Google+ photo

Bạn đang bình luận bằng tài khoản Google+ Log Out / Thay đổi )

Connecting to %s