Showing posts with label \uput. Show all posts
Showing posts with label \uput. Show all posts

Thursday, July 5, 2012

Pie Chart --- Optional arguments of "\psChart"

Now we come to examine the optional arguments of command "\psChart". The following table lists the special options belong to "\psChart".

name description default value
chartSep distance from the pie chart center to an outraged pie piece 10pt
chartColor gray or color gray
usercolor a comma separated list of user defined colors for the pie pieces encloed with { } { }
chartNodeI the position of the inner node, relative to the radius 0.75
chartNodeO the position of the outer node, relative to the radius 1.5

With these arguments we can plot a outstanding pie chart.

\documentclass{article}
\usepackage{pstricks}
\usepackage{pstricks-add}
\usepackage{pst-plot}
\begin{document}
\begin{figure}
\centering
  \begin{pspicture}(-5,-5)(8,5)
    %Pie chart
    \psChart[chartSep=15pt,chartColor=color,
             chartNodeO=1.15,shadow=true,
             shadowsize=5pt]{15,20,30,20,15}
             {3}{4.75}
    %The Label for the outraged piece
    \ncline[linecolor=-chartFillColor3]
            {psChartI3}{psChartO3}
    \uput[l](psChartO3){\textcolor{chartFillColor3}
                        {\large The Most}
                       }
    %The legends
    \psframe[fillcolor=chartFillColor1,fillstyle=solid]
             (5.25,-5)(6.5,-4.5)
    \uput[r](6.5,-4.75){Traffic}
    \psframe[fillcolor=chartFillColor2,fillstyle=solid]
             (5.25,-4)(6.5,-3.5)
    \uput[r](6.5,-3.75){Clothes}
    \psframe[fillcolor=chartFillColor3,fillstyle=solid]
             (5.25,-3)(6.5,-2.5)
    \uput[r](6.5,-2.75){Food}
    \psframe[fillcolor=chartFillColor4,fillstyle=solid]
             (5.25,-2)(6.5,-1.5)
    \uput[r](6.5,-1.75){Rent}
    \psframe[fillcolor=chartFillColor5,fillstyle=solid]
             (5.25,-1)(6.5,-0.5)
    \uput[r](6.5,-0.75){Others}
  \end{pspicture}
\end{document}

Fig.1 An advanced practical example of pie chart plotting

Files downloads: tex ps pdf


Saturday, June 9, 2012

Pie Chart --- three useful nodes defined by command "\psChart"

The macro \psChart defines for every value three nodes at the half angle and in distances from chartNodeI (default 0.75), 1 and chartNodeO(default 1.25) times of the radius from the origin (chartNodeI and chartNodeO will be discussed in the next post). The nodes are named as psChartInum, psChartnum and psChartOnum, where num is the number of the pie pieces (num have a value between 1 to the numbers of pie pieces, Letter I stands for Inner and O stands for Outer). These nodes will be very usefull when you add labels to the pie pieces. The following shows these nodes visually.

\documentclass{article}
\usepackage{pstricks}
\usepackage{pstricks-add}
\usepackage{pst-plot}
\begin{document}
  \begin{pspicture}(-5,-5)(5,5)
    \psChart{2,2,3,2}{}{3}
    \psdot[linecolor=red](psChart2)
    \uput[r](psChart2){\textcolor{red}{psChart2}}
    \psdot[linecolor=green](psChartI2)
    \uput[r](psChartI2){\textcolor{green}{psChartI2}}
    \psdot[linecolor=blue](psChartO2)
    \uput[r](psChartO2){\textcolor{blue}{psChartO2}}
    \psdot[linecolor=red](psChart3)
    \uput[r](psChart3){\textcolor{red}{psChart3}}
    \psdot[linecolor=green](psChartI3)
    \uput[r](psChartI3){\textcolor{green}{psChartI3}}
    \psdot[linecolor=blue](psChartO3)
    \uput[r](psChartO3){\textcolor{blue}{psChartO3}}
  \end{pspicture}
\end{document}

Fig.1 Three useful nodes defined by command \psChart.

Files Downloads: tex ps pdf

Now a practical example of plotting a pie chart will be presented.

\documentclass{article}
\usepackage{pstricks}
\usepackage{pstricks-add}
\usepackage{pst-plot}
\begin{document}
  \begin{pspicture}(-5,-5)(5,5)
    \psChart{5,4,4,3,3}{}{3}
    \rput(psChartI1){\textcolor{red}{5}}
    \rput(psChartI2){\textcolor{red}{4}}
    \rput(psChartI3){\textcolor{red}{4}}
    \rput(psChartI4){\textcolor{red}{3}}
    \rput(psChartI5){\textcolor{red}{3}}
    \psset{nodesepA=5pt,nodesepB=-10pt}
    \rput(psChartO1){{US}}
    \rput(psChartO2){{EU}}
    \rput(psChartO3){{China}}
    \rput(psChartO4){{Japan}}
    \rput(psChartO5){{Others}}
  \end{pspicture}
\end{document}

Fig.2 A practical example of pie chart plotting.

In this example, we put the labels using the nodes which have been defined by "\psChart".

Files Downloads: tex ps pdf

Sunday, June 3, 2012

Pie chart --- the simplest use of command "\psChart"

Command "\psChart" in package pstricks-add makes plot a pie chart very simple. The syntax of this command is "\psChart[options]{values1}{values2}{radius}". "values1" is the list of date to be plotted. "vaules2" is a list of outraged pieces. For example, if you want the 1st and 5-th sector to be outraged, you can specify this parameter as "{1,5}". "radius" is the radius of the pie chart. The color used to paint the num-th pie piece is named internally as "chartFillColornum".

Now let us have a try of this command.

  \begin{pspicture}(-5,-5)(8,5)
    %Pie chart
    \psChart{1,2,2,3,1,4}{1,5}{4.75}
    %The legends
    \psframe[fillcolor=chartFillColor1,
      fillstyle=solid](5.25,-5)(6.5,-4.5)
    \uput[r](6.5,-4.75){Pie 1}
    \psframe[fillcolor=chartFillColor2,
      fillstyle=solid](5.25,-4)(6.5,-3.5)
    \uput[r](6.5,-3.75){Pie 2}
    \psframe[fillcolor=chartFillColor3,
      fillstyle=solid](5.25,-3)(6.5,-2.5)
    \uput[r](6.5,-2.75){Pie 3}
    \psframe[fillcolor=chartFillColor4,
      fillstyle=solid](5.25,-2)(6.5,-1.5)
    \uput[r](6.5,-1.75){Pie 4}
    \psframe[fillcolor=chartFillColor5,
      fillstyle=solid](5.25,-1)(6.5,-0.5)
    \uput[r](6.5,-0.75){Pie 5}
    \psframe[fillcolor=chartFillColor6,
      fillstyle=solid](5.25,0)(6.5,0.5)
    \uput[r](6.5,0.25){Pie 6}
  \end{pspicture}

Fig.1 Pie chart plots in Pstricks

In the upper example, we see that a pie chart with radius "5" is plotted accroding to data "{1,2,2,3,1,4}", and the 1-st and 5-th pie pieces is outraged. This is exactly what we expected. And with the help of variable "chartFillColornum" we produced the legends.

Files Downloads: tex ps pdf

Tuesday, December 13, 2011

How to plot using pstricks(1)----plot a function

After the previous posts, now we have the ability to deal with the plotting problems using pstricks. And this time we will talk about how to plot a function using pstricks.

The command used to plot a function in pstricks is "\psplot{xmin}{xmax}{function}". "xmin" and "xmax" determine the plot range and "function" is the function to be plotted. "function" should be written in postscript code. Since this blog is not about postscript, how to write a function in postscript code will not be talked in detail, only when it is used some simple explanation will be given.

There are also some optional parameters to control the appearance of the plot. "plotstyle=line,polygon,dots,curve..." controls the plotstyle, "plotpoints=int" controls how many points be plotted and other parameters such as "showpoints", "linestyle", "linecolor", "dotstyle"... have the same meaning as we have talked before.

Now we come to some examples.

\documentclass{article}
\usepackage{pst-plot}
\usepackage{pstricks}
\begin{document}
  \begin{pspicture}*(-1,-1)(5.5,5.5)
    \psgrid[gridlabels=0,gridcolor=gray,
      subgridcolor=lightgray](0,0)(5,5)
    \psaxes{->}(0,0)(0,0)(5.5,5.5)
    \psplot[linecolor=blue,plotstyle=dots,
      plotpoints=15,dotstyle=x,dotsize=4pt]
      {0}{5}{x}
    \rput{45}(2.5,3){\color{blue}$y=x$}
    \psplot[linecolor=red,plotstyle=dots,
      plotpoints=15,dotstyle=+,dotsize=4pt]
      {0}{5}{x 2 exp 5 div} %(x^2)/5
    \psplot[linecolor=red,plotstyle=line]
      {0}{5}{x 2 exp 5 div} %(x^2)/5
    \rput{55}(4,2.25)
      {\color{red}$y=\frac{x^{2}}{5}$}
    \rput(0.25,5.25){$y$}
    \rput(5.25,0.25){$x$}
  \end{pspicture}
\end{document} 

2
Fig.1 An example of Psplot—Plot function y = x and y = x /5.

\documentclass{article}
\usepackage{pst-plot}
\usepackage{pstricks}
\begin{document}
  \begin{pspicture}*(-1.25,-1.25)(4.5,1.25)
    \psgrid[gridlabels=0,gridcolor=red,
      subgridcolor=green](0,-1)(4,1)
    \psaxes[labels=y,tickstyle=bottom]
      {->}(0,0)(0,-1.25)(4.5,1.25)
    \rput(0.25,1){$y$}
    \rput(4.25,0.25){$x$}
    \psset{xunit=0.0111cm} %xuni=4cm/360
    \psplot[plotstyle=curve,
      linecolor=blue]{0}{360}{x sin}
       %"x sin" is postscript code
       %with meaing sin(x)
    \psplot[plotstyle=curve,linecolor=brown,
      linestyle=dashed]{0}{360}{x cos}
       %"x cos" is postscript code
       %with meaing cos(x)
    \uput[-90](90,0){$\frac{\pi}{2}$}
    \uput[-90](180,0){\scriptsize $\pi$}
    \uput[-90](270,0){$\frac{3\pi}{2}$}
    \uput[-90](360,0){\scriptsize $2\pi$}
  \end{pspicture}
\end{document}

Fig.2 Another example of Psplot—Plot function y = sin(x) and y =
cos(x).

Files Dowload: tex ps pdf

Sunday, December 4, 2011

Some basic graph objects in pstricks (3) ---- Circles,Arc,Wedge,Ellipses,Elliptic Arc,Rectangle and so on

"\pscircle[parameters](x0,y0){r}" draws a circle whose center is located at (x0,y0) and that has radius r.

"\pswedge[parameters](x0,y0){r}{ang1}{ang2}" draws a wedge whose center is located at (x0,y0), that has radius r and extened counterclockwise from ang1 to ang2.

"\psarc[parameters]{arrowstyle}(x,y){r}{angA}{angB}" clockwisely draws an arc form angA to angB. (x,y) and r are the center and radius of the circle ( a arc curve is always a part of a circle).

"\psellipse[parameters](x0,y0)(h_r,v_r)" draws a ellipse. (x0,y0) is the center, h_r is the horizontal radius and v_r is the vertical radius.

"\psellipticarc[par]{arrow}(x0,y0)(x1,y1){angA}{angB}" which is very similar to "\psarc" draws an elliptic.

"\psframe[parameters](x0,y0)(x1,y1)" draws a rectangle with lower left corner at (xo,y0), upper right corner at (x1,y1).

There are also command like "\pstriangle","\psdiamond" to draw triangle and diamond. But we can use "\pspolygon" to realize the utility of all these commands. So we will not talk about them here.

For all these commands a star can be followed (for example, "\pscircle*"). This determine the fill the object.

Now let we have a practice on these commands.


\documentclass{article}
\usepackage{pstricks}
\begin{document}
  \begin{pspicture}(-2.5,2.5)(2.5,2.5)
    \psframe[linestyle=none,framearc=0.25,%
      fillstyle=solid,fillcolor=green]
      (-2.5,-2.5)(2.5,2.5)
    \pscircle[linecolor=red](0,0){2.5}
    \pswedge[fillstyle=solid,
      fillcolor=red](0,0){2.5}{0}{45}
    \psarc{->}(0,0){1.5}{0}{45} %draw arc
    \uput{1.5}[22.5]
      (0,0){$45^{\circ}$} %put a label
    \psellipse(0,-1.25)(2.5,1.25)
  \end{pspicture}
\end{document}

This practice draw something like this:

Fig.1 Draw circle,arc,ellipse,rectangle... uisng Pstricks
 Files download: tex ps pdf
Creative Commons License
Except as otherwise noted, the content of this page is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License.