> For the complete documentation index, see [llms.txt](https://ayakaleaf-pro.ayaka.space/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ayakaleaf-pro.ayaka.space/latex/zh-cn/wen-da/06-can-i-use-the-pstricks-package-on-overleaf.md).

# 我可以在 Overleaf 上使用 pstricks 宏包吗？

## 简介

从历史上看，在 Overleaf 上使用 PSTricks 的最简单方法之一是通过 XeLaTeX 编译器——也就是 [将项目的编译器设置为 XeLaTeX](/latex/zh-cn/zhi-shi-ku/026-changing-compiler.md)。2021 年 9 月，PSTricks 的开发者 [宣布](https://tug.org/pipermail/pstricks/2021/011321.html) 表示现在可以使用 LuaLaTeX 来编译包含 PSTricks 代码的文档——为用户提供了另一种便捷的解决方案。

正如在 [PSTricks 网页](https://tug.org/PSTricks/main.cgi?file=pdf/pdfoutput#lualatex)中所讨论的，LuaLaTeX 编译极其复杂的 PSTricks 示例可能需要很长时间，尤其是那些需要大量计算的示例。LuaLaTeX 较长的编译时间有时会触发 [Overleaf 编译超时](/latex/zh-cn/zhi-shi-ku/038-fixing-and-preventing-compile-timeouts.md#what-is-a-e2809ccompile-timeoute2809d3f).

## 示例

以下示例都可以直接在 Overleaf 中打开，并使用 XeLaTeX 编译器；当代码在 Overleaf 中打开后，你可以切换为使用 LuaLaTeX。所有示例最初仅发布在 [Overleaf 画廊](#overleaf-gallery-links) ，但现在在此重新展示，以便在本文正文中显示 PSTricks 代码。它们来源于网站 `http://www.thelazymathematician.com/p/pstricks-examples.html` ，在撰写本文时，该网站似乎已无法访问。

* **提示**：访问 [PSTricks 画廊](https://tug.org/PSTricks/main.cgi?file=examples-list) ，即可在 Overleaf 上尝试更多示例。

### 示例 1：绘制点

```latex
% Original source: http://www.thelazymathematician.com/p/pstricks-examples.html
\documentclass[11pt]{article}
\usepackage{pst-all}	%call the pstricks package
\begin{document}
\begin{pspicture}(-1,-1)(5,5)
\psaxes{->}(0,0)(-0.5,-0.5)(4.5,4.5)[$x$,0][$y$, 90]	%creates axes
\psdot(2,1)	%plots the point (2,1)
\uput[0](2,1){$A$}	%labels the point (2,1) as A
\end{pspicture}
\end{document}
```

[在 Overleaf 中打开此示例](https://www.overleaf.com/docs?engine=xelatex\&snip_name=PSTricks+LaTeX+Example+1%3A+Plotting+points\&snip=%25+Original+source%3A+http%3A%2F%2Fwww.thelazymathematician.com%2Fp%2Fpstricks-examples.html%0A%5Cdocumentclass%5B11pt%5D%7Barticle%7D%0A%5Cusepackage%7Bpst-all%7D%09%25call+the+pstricks+package%0A%5Cbegin%7Bdocument%7D%0A%5Cbegin%7Bpspicture%7D%28-1%2C-1%29%285%2C5%29%09%0A%5Cpsaxes%7B-%3E%7D%280%2C0%29%28-0.5%2C-0.5%29%284.5%2C4.5%29%5B%24x%24%2C0%5D%5B%24y%24%2C+90%5D%09%25creates+axes%0A%5Cpsdot%282%2C1%29%09%25plots+the+point+%282%2C1%29%0A%5Cuput%5B0%5D%282%2C1%29%7B%24A%24%7D%09%25labels+the+point+%282%2C1%29+as+A%0A%5Cend%7Bpspicture%7D%0A%5Cend%7Bdocument%7D)

此示例生成如下输出：

![在 Overleaf 上使用 LaTeX 中的 PSTricks 绘制点](/files/991c8a4b6d674291985d7d974d80d67a2b56de0c)

### 示例 2：绘制区间

```latex
% Original source: http://www.thelazymathematician.com/p/pstricks-examples.html
\documentclass[11pt]{article}
\usepackage{pst-all}	%call the pstricks package
\begin{document}
\psset{xunit=0.5cm, yunit=0.5cm, yAxis=false}	%scales the picture, removes the y-axis
\begin{pspicture}(-11,0)(11,0)
\psaxes[Dx=5, subticks=5]{<->}(0,0)(-11,0)(11,0)	%creates axes
\psline[linewidth=3pt, linecolor=cyan]{o->}(-2,0)(11,0)	%creates a thick, blue line from -2 (open) to infinity
\end{pspicture}
\end{document}
```

[在 Overleaf 中打开此示例](https://www.overleaf.com/docs?engine=xelatex\&snip_name=PSTricks+LaTeX+Example+2%3A+Graphing+an+interval\&snip=%25+Original+source%3A+http%3A%2F%2Fwww.thelazymathematician.com%2Fp%2Fpstricks-examples.html%0A%5Cdocumentclass%5B11pt%5D%7Barticle%7D%0A%5Cusepackage%7Bpst-all%7D%09%25call+the+pstricks+package%0A%5Cbegin%7Bdocument%7D%09%0A%5Cpsset%7Bxunit%3D0.5cm%2C+yunit%3D0.5cm%2C+yAxis%3Dfalse%7D%09%25scales+the+picture%2C+removes+the+y-axis%0A%5Cbegin%7Bpspicture%7D%28-11%2C0%29%2811%2C0%29%09%0A%5Cpsaxes%5BDx%3D5%2C+subticks%3D5%5D%7B%3C-%3E%7D%280%2C0%29%28-11%2C0%29%2811%2C0%29%09%25creates+axes%0A%5Cpsline%5Blinewidth%3D3pt%2C+linecolor%3Dcyan%5D%7Bo-%3E%7D%28-2%2C0%29%2811%2C0%29%09%25creates+a+thick%2C+blue+line+from+-2+%28open%29+to+infinity%0A%5Cend%7Bpspicture%7D%0A%5Cend%7Bdocument%7D)

此示例生成如下输出：

![在 Overleaf 上使用 LaTeX 中的 PSTricks 绘制区间图](/files/283f488cb27777ac450ae64a064347ef9f510deb)

### 示例 3：通过特定点绘制曲线

```latex
% Original source: http://www.thelazymathematician.com/p/pstricks-examples.html
\documentclass[11pt]{article}
\usepackage{pst-all}
\begin{document}
\psset{xunit=.5cm,yunit=0.5cm,}
\begin{pspicture}(-11,-11)(11,11)
\psgrid[subgriddiv=1, gridcolor=gray,griddots=10,gridlabels=0pt](0,0)(-10,-10)(10,10)
\psaxes[labelFontSize=\scriptscriptstyle]{<->}(0,0)(-10.5,-10.5)(10.5,10.5)
\pscurve[linewidth=1.5pt, showpoints=true, dotstyle=o, fillcolor=cyan]{<->}(-9,4)(-8,1)(-4,-5)(0,-4)(5,-3)(9,1)
\end{pspicture}
\end{document}
```

[在 Overleaf 中打开此示例](https://www.overleaf.com/docs?engine=xelatex\&snip_name=PSTricks+LaTeX+Example+3%3A+Graphing+a+curve+through+specific+points\&snip=%25+Original+source%3A+http%3A%2F%2Fwww.thelazymathematician.com%2Fp%2Fpstricks-examples.html%0A%5Cdocumentclass%5B11pt%5D%7Barticle%7D%0A%5Cusepackage%7Bpst-all%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cpsset%7Bxunit%3D.5cm%2Cyunit%3D0.5cm%2C%7D%0A%5Cbegin%7Bpspicture%7D%28-11%2C-11%29%2811%2C11%29%0A%5Cpsgrid%5Bsubgriddiv%3D1%2C+gridcolor%3Dgray%2Cgriddots%3D10%2Cgridlabels%3D0pt%5D%280%2C0%29%28-10%2C-10%29%2810%2C10%29%0A%5Cpsaxes%5BlabelFontSize%3D%5Cscriptscriptstyle%5D%7B%3C-%3E%7D%280%2C0%29%28-10.5%2C-10.5%29%2810.5%2C10.5%29%0A%5Cpscurve%5Blinewidth%3D1.5pt%2C+showpoints%3Dtrue%2C+dotstyle%3Do%2C+fillcolor%3Dcyan%5D%7B%3C-%3E%7D%28-9%2C4%29%28-8%2C1%29%28-4%2C-5%29%280%2C-4%29%285%2C-3%29%289%2C1%29%0A%5Cend%7Bpspicture%7D%0A%5Cend%7Bdocument%7D)

此示例生成如下输出：

![在 Overleaf 上使用 LaTeX 中的 PSTricks 通过特定点绘制曲线](/files/f6729e86dbb66840ca578fa1947f8a59dd58f1e0)

### 示例 4：绘制函数

```latex
% Original source: http://www.thelazymathematician.com/p/pstricks-examples.html
\documentclass[11pt]{article}
\usepackage{pst-all}
\begin{document}
\psset{xunit=.5cm,yunit=0.5cm,algebraic=true}
\begin{pspicture}(-11,-11)(11,11)
\psaxes[Dx=2, Dy=2, subticks=2, labelFontSize=\scriptscriptstyle]{<->}(0,0)(-10.5,-10.5)(10.5,10.5)[$x$,0][$y$,90]
\psplot[linestyle=dotted, linewidth=2pt, linecolor=red, yMaxValue=10, yMinValue=-10]{0.1}{10} {ln(x)}
\end{pspicture}
\end{document}
```

[在 Overleaf 中打开此示例](https://www.overleaf.com/docs?engine=xelatex\&snip_name=PSTricks+LaTeX+Example+4%3A+Graphing+a+function\&snip=%25+Original+source%3A+http%3A%2F%2Fwww.thelazymathematician.com%2Fp%2Fpstricks-examples.html%0A%5Cdocumentclass%5B11pt%5D%7Barticle%7D%0A%5Cusepackage%7Bpst-all%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cpsset%7Bxunit%3D.5cm%2Cyunit%3D0.5cm%2Calgebraic%3Dtrue%7D%0A%5Cbegin%7Bpspicture%7D%28-11%2C-11%29%2811%2C11%29%0A%5Cpsaxes%5BDx%3D2%2C+Dy%3D2%2C+subticks%3D2%2C+labelFontSize%3D%5Cscriptscriptstyle%5D%7B%3C-%3E%7D%280%2C0%29%28-10.5%2C-10.5%29%2810.5%2C10.5%29%5B%24x%24%2C0%5D%5B%24y%24%2C90%5D%0A%5Cpsplot%5Blinestyle%3Ddotted%2C+linewidth%3D2pt%2C+linecolor%3Dred%2C+yMaxValue%3D10%2C+yMinValue%3D-10%5D%7B0.1%7D%7B10%7D+%7Bln%28x%29%7D%0A%5Cend%7Bpspicture%7D%0A%5Cend%7Bdocument%7D)

此示例生成如下输出：

![在 Overleaf 上使用 LaTeX 中的 PSTricks 绘制函数](/files/af76510727b42f8ec11d295bacb8191bff8bb9e1)

### 示例 5：绘制三角函数

```latex
% Original source: http://www.thelazymathematician.com/p/pstricks-examples.html
\documentclass[11pt]{amsart}
\usepackage{pst-all}
\begin{document}
\begin{pspicture}(-6.5,-2.5)(6.5,5.5)
\psaxes[trigLabelBase=2,dx=\pstPI2, xunit=\psPi,trigLabels, xsubticks=2]{<->}(0,0)(-1.2,-2.4)(1.2,5.4)[$x$,0][$y$,90]
\psplot[algebraic,linewidth=1.6pt,plotpoints=10000, linecolor=red]{-\psPi}{\psPi}{cos(2*x)+ 3}
\end{pspicture}
\end{document}
```

[在 Overleaf 中打开此示例](https://www.overleaf.com/docs?engine=xelatex\&snip_name=PSTricks+LaTeX+Example+5%3A+Graphing+a+trig+function\&snip=%25+Original+source%3A+http%3A%2F%2Fwww.thelazymathematician.com%2Fp%2Fpstricks-examples.html%0A%5Cdocumentclass%5B11pt%5D%7Bamsart%7D%0A%5Cusepackage%7Bpst-all%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cbegin%7Bpspicture%7D%28-6.5%2C-2.5%29%286.5%2C5.5%29%0A%5Cpsaxes%5BtrigLabelBase%3D2%2Cdx%3D%5CpstPI2%2C+xunit%3D%5CpsPi%2CtrigLabels%2C+xsubticks%3D2%5D%7B%3C-%3E%7D%280%2C0%29%28-1.2%2C-2.4%29%281.2%2C5.4%29%5B%24x%24%2C0%5D%5B%24y%24%2C90%5D%0A%5Cpsplot%5Balgebraic%2Clinewidth%3D1.6pt%2Cplotpoints%3D10000%2C+linecolor%3Dred%5D%7B-%5CpsPi%7D%7B%5CpsPi%7D%7Bcos%282%2Ax%29%2B+3%7D%0A%5Cend%7Bpspicture%7D%0A%5Cend%7Bdocument%7D)

此示例生成如下输出：

![在 Overleaf 上使用 LaTeX 中的 PSTricks 绘制三角函数](/files/f8ba1a6095403fdfa455c8a2ca97216674394946)

### 示例 6：绘制多边形

```latex
% Original source: http://www.thelazymathematician.com/p/pstricks-examples.html
\documentclass[11pt]{article}
\usepackage{pst-all}
\begin{document}
\psset{xunit=1cm,yunit=1cm,algebraic=true}
\begin{pspicture}(0,0)(3,3)
\pspolygon[linecolor=orange,fillcolor=blue!20, fillstyle=vlines*, hatchcolor=purple, showpoints=false, linearc=0.2](1,1)(2,1)(2.31,1.95)(1.5,2.54)(0.69,1.95)
\end{pspicture}
\end{document}
```

[在 Overleaf 中打开此示例](https://www.overleaf.com/docs?engine=xelatex\&snip_name=PSTricks+LaTeX+Example+6%3A+Drawing+a+polygon\&snip=%25+Original+source%3A+http%3A%2F%2Fwww.thelazymathematician.com%2Fp%2Fpstricks-examples.html%0A%5Cdocumentclass%5B11pt%5D%7Barticle%7D%0A%5Cusepackage%7Bpst-all%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cpsset%7Bxunit%3D1cm%2Cyunit%3D1cm%2Calgebraic%3Dtrue%7D%0A%5Cbegin%7Bpspicture%7D%280%2C0%29%283%2C3%29%0A%5Cpspolygon%5Blinecolor%3Dorange%2Cfillcolor%3Dblue%2120%2C+fillstyle%3Dvlines%2A%2C+hatchcolor%3Dpurple%2C+showpoints%3Dfalse%2C+linearc%3D0.2%5D%281%2C1%29%282%2C1%29%282.31%2C1.95%29%281.5%2C2.54%29%280.69%2C1.95%29%0A%5Cend%7Bpspicture%7D%0A%5Cend%7Bdocument%7D)

此示例生成如下输出：

![在 Overleaf 上使用 LaTeX 中的 PSTricks 绘制多边形](/files/25596835c097d0227a05be2873a63ec04862a30c)

### 示例 7：绘制圆

```latex
% Original source: http://www.thelazymathematician.com/p/pstricks-examples.html
\documentclass{article}
\usepackage{pst-all}
\begin{document}
\psset{xunit=0.15in, yunit=0.15in}
\begin{pspicture}(0,0)(11,11)
\psaxes[Dx=4,Dy=4, subticks=4]{->}(0,0)(0,0)(10,10)[$x$,0][$y$,0]
\pscircle[runit=0.15in, fillcolor=orange!50, fillstyle=solid,shadow=true](5,5){3}
\end{pspicture}
\end{document}
```

[在 Overleaf 中打开此示例](https://www.overleaf.com/docs?engine=xelatex\&snip_name=PSTricks+LaTeX+Example+7%3A+Drawing+a+circle\&snip=%25+Original+source%3A+http%3A%2F%2Fwww.thelazymathematician.com%2Fp%2Fpstricks-examples.html%0A%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%7Bpst-all%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cpsset%7Bxunit%3D0.15in%2C+yunit%3D0.15in%7D%0A%5Cbegin%7Bpspicture%7D%280%2C0%29%2811%2C11%29%0A%5Cpsaxes%5BDx%3D4%2CDy%3D4%2C+subticks%3D4%5D%7B-%3E%7D%280%2C0%29%280%2C0%29%2810%2C10%29%5B%24x%24%2C0%5D%5B%24y%24%2C0%5D%0A%5Cpscircle%5Brunit%3D0.15in%2C+fillcolor%3Dorange%2150%2C+fillstyle%3Dsolid%2Cshadow%3Dtrue%5D%285%2C5%29%7B3%7D%0A%5Cend%7Bpspicture%7D%0A%5Cend%7Bdocument%7D)

此示例生成如下输出：

![在 Overleaf 上使用 LaTeX 中的 PSTricks 绘制圆](/files/392ad3bd14fe87f76a4304f7fc08249b3df771d4)

## Overleaf 画廊链接

* [示例 1：绘制点](https://www.overleaf.com/latex/examples/pstricks-latex-example-1-plotting-points/hrdgjvwpkwxc)
* [示例 2：绘制区间](https://www.overleaf.com/latex/examples/pstricks-latex-example-2-graphing-an-interval/pprsbgcxsqhh)
* [示例 3：通过特定点绘制曲线](https://www.overleaf.com/latex/examples/pstricks-latex-example-3-graphing-a-curve-through-specific-points/pptpxsjmdgym)
* [示例 4：绘制函数](https://www.overleaf.com/latex/examples/pstricks-latex-example-4-graphing-a-function/dqcnbzcqzstp)
* [示例 5：绘制三角函数](https://www.overleaf.com/latex/examples/pstricks-latex-example-5-graphing-a-trig-function/pdbcbffynvgr)
* [示例 6：绘制多边形](https://www.overleaf.com/latex/examples/pstricks-latex-example-6-drawing-a-polygon/zxydfzwzfvrc)
* [示例 7：绘制圆](https://www.overleaf.com/latex/examples/pstricks-latex-example-7-drawing-a-circle/qkvqwzcxmwrn)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://ayakaleaf-pro.ayaka.space/latex/zh-cn/wen-da/06-can-i-use-the-pstricks-package-on-overleaf.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
