Plots Béton Point P
Generic X-Y Plotting
Generic function for plotting of R objects. For more details about the graphical parameter arguments, see par
.
This plot is a simple point A to point B and back to point A plot. The protagonist sets off on a journey, only to return to his or her starting point having gained wisdom and experience (and sometimes treasure too). Paulo Coelho's The Alchemist is a beloved contemporary illustration of this plot. How to Outline a Story Plot: Three-Act Structure. Question 1003804: Consider the point P(6, −2). (a) Plot the image of the point with respect to the y-axis. (b) Plot the image of the point with respect to the x-axis. (c) Plot the image of the point with respect to the origin. Answer by MathLover1(17568) (Show Source): You can put this solution on YOUR website!
For simple scatter plots, plot.default
will be used. However, there are plot
methods for many R objects, including function
s, data.frame
s, density
objects, etc. Use methods(plot)
and the documentation for these.
- Keywords
- hplot
Usage
Arguments
the coordinates of points in the plot. Alternatively, a single plotting structure, function or any R object with a plot
method can be provided.
the y coordinates of points in the plot, optional if x
is an appropriate structure.
Arguments to be passed to methods, such as graphical parameters (see par
). Many methods will accept the following arguments:
type
what type of plot should be drawn. Possible types are
'p'
for points,'l'
for lines,'b'
for both,'c'
for the lines part alone of'b'
,'o'
for both ‘overplotted’,'h'
for ‘histogram’ like (or ‘high-density’) vertical lines,'s'
for stair steps,'S'
for other steps, see ‘Details’ below,'n'
for no plotting.
type
s give a warning or an error; using, e.g., type = 'punkte'
being equivalent to type = 'p'
for S compatibility. Note that some methods, e.g.plot.factor
, do not accept this.main
an overall title for the plot: see title
.
sub
a sub title for the plot: see title
.
xlab
a title for the x axis: see title
.
ylab
a title for the y axis: see title
.
asp
the (y/x) aspect ratio, see plot.window
.
Details
The two step types differ in their x-y preference: Going from ((x1,y1)) to ((x2,y2)) with (x1 < x2), type = 's'
moves first horizontal, then vertical, whereas type = 'S'
moves the other way around.
See Also
plot.default
, plot.formula
and other methods; points
, lines
, par
. For thousands of points, consider using smoothScatter()
instead of plot()
.
For X-Y-Z plotting see contour
, persp
and image
.
Aliases
- plot
Examples
library(graphics)
# NOT RUN {require(stats) # for lowess, rpois, rnormplot(cars)lines(lowess(cars))plot(sin, -pi, 2*pi) # see ?plot.function## Discrete Distribution Plot:plot(table(rpois(100, 5)), type = 'h', col = 'red', lwd = 10, main = 'rpois(100, lambda = 5)')## Simple quantiles/ECDF, see ecdf() {library(stats)} for a better one:plot(x <- sort(rnorm(47)), type = 's', main = 'plot(x, type = 's')')points(x, cex = .5, col = 'dark red')# }
Community examples
```r # Plot with multiple lines in different color: plot(sin,-pi, 4*pi, col = 'red') plot(cos,-pi, 4*pi, col = 'blue', add = TRUE) ```
```r ## Plot with multiple lines in different color: plot(sin,-pi, 4*pi, col = 'red') plot(cos,-pi, 4*pi, col = 'blue', add = TRUE) ```
plot(basedata1$iq, basedata$read_ab, main='Diagrama de Dispersión', xlab = 'read_ab', ylab = 'iq')
## Linear Regression ExamplePlot points and add linear regression model line:```rlinreg <- lm(dist ~ speed, cars)linreg_coeffs <- coef(linreg)lineq <- paste('distance = ', linreg_coeffs[2], ' * speed + ', linreg_coeffs[1])plot(cars, main = 'Car distance by speed', sub = lineq, xlab = 'speed', ylab = 'distance', pch = 19)abline(linreg, col = 'blue')```
Pass a numeric vector to the `x` and `y` arguments, and you get a scatter plot. The `main` argument provides a [`title()`](https://www.rdocumentation.org/packages/graphics/topics/title). ```{r} plot(1:100, (1:100) ^ 2, main = 'plot(1:100, (1:100) ^ 2)') ``` If you only pass a single argument, it is interpreted as the `y` argument, and the `x` argument is the sequence from 1 to the length of `y`. ```{r} plot((1:100) ^ 2, main = 'plot((1:100) ^ 2)') ``` `cex` ('character expansion') controls the size of points. `lwd` controls the line width. `pch` controls the shape of points - you get 25 symbols to choose from, as well as alphabetic characters. `col` controls the color of the points. When `pch` is `21:25`, the points also get a background color which is set using `bg`. [`points()`](https://www.rdocumentation.org/packages/graphics/topics/points) for more on how to change the appearance of points in a scatter plot. ```{r} plot( 1:25, cex = 3, lwd = 3, pch = 1:25, col = rainbow(25), bg = c(rep(NA, 20), terrain.colors(5)), main = 'plot(1:25, pch = 1:25, ...)' ) ``` If you specify `type = 'l'`, you get a line plot instead. See [`plot.default()`](https://www.rdocumentation.org/packages/graphics/topics/plot.default) for a demonstration of all the possible values for type. ```{r} plot( (1:100) ^ 2, type = 'l', main = 'plot((1:100) ^ 2, type = 'l')' ) ``` `lty` controls the line type. `col` and `lwd` work in the same way as with points. [`lines()`](https://www.rdocumentation.org/packages/graphics/topics/lines) for more on how to change the appearance of lines in a line plot. ```{r} plot( (1:100) ^ 2, type = 'l', lty = 'dashed', lwd = 3, col = 'chocolate', main = 'plot((1:100) ^ 2, type = 'l', lty = 'dashed', ...)' ) ``` It is best practise to keep your `x` and `y` variables together, rather than as separate variables. ```{r} with( cars, plot(speed, dist, main = 'with(cars, plot(speed, dist))') ) ``` The formula interface, similar to modeling functions like [`lm()`](https://www.rdocumentation.org/packages/stats/topics/lm), makes this convenient. See [`plot.formula()`](https://www.rdocumentation.org/packages/graphics/topics/plot.formula) for more information. ```{r} plot( dist ~ speed, data = cars, main = 'plot(dist ~ speed, data = cars)' ) ``` If you pass a two column data frame or matrix then the columns are treated as the x and y values. So in this case, you can simply do: ```{r} plot(cars, main = 'plot(cars)') ``` The [`lines()`](https://www.rdocumentation.org/packages/graphics/topics/lines), [`points()`](https://www.rdocumentation.org/packages/graphics/topics/points) and [`title()`](https://www.rdocumentation.org/packages/graphics/topics/title) functions add lines, points and titles respectively to an existing plot. ```{r} plot(cars) lines(lowess(cars)) title('plot(cars); lines(lowess(cars))') ``` If the `x` variable is categorical, `plot()` knows to draw a box plot instead of a scatter plot. See [`boxplot()`](https://www.rdocumentation.org/packages/graphics/topics/boxplot) for more information on drawing those. ```{r} with( sleep, plot(group, extra, main = 'with(sleep, plot(group, extra))') ) ``` Again, the formula interface can be useful here. ```{r} plot(extra ~ group, sleep, main = 'plot(extra ~ group, sleep)') ``` Axis limits can be set using `xlim` and `ylim`. ```{r} plot( (1:100) ^ 2, xlim = c(-100, 200), ylim = c(2500, 7500), main = 'plot((1:100) ^ 2, xlim = c(-100, 200), ylim = c(2500, 7500))' ) ``` You can set log-scale axes using the `log` argument. ```{r} plot( exp(1:10), 2 ^ (1:10), main = 'plot(exp(1:10), 2 ^ (1:10))' ) plot( exp(1:10), 2 ^ (1:10), log = 'x', main = 'plot(exp(1:10), 2 ^ (1:10), log = 'x')' ) plot( exp(1:10), 2 ^ (1:10), log = 'y', main = 'plot(exp(1:10), 2 ^ (1:10), log = 'y')' ) plot( exp(1:10), 2 ^ (1:10), log = 'xy', main = 'plot(exp(1:10), 2 ^ (1:10), log = 'xy')' ) ``` If you pass a table of counts for a vector, `plot()` draws a simple histogram-like plot. See [`hist()`](https://www.rdocumentation.org/packages/graphics/topics/hist) for a more comprehensive histogram function. ```{r} plot( table(rpois(100, 5)), main = 'plot(table(rpois(100, 5)))' ) ``` For multi-dimensional tables, you get a mosaic plot. See [`mosaicplot()`](https://www.rdocumentation.org/packages/graphics/topics/mosaicplot) for more information. ```{r} plot( table(X = rpois(100, 5), Y = rbinom(100, 10, 0.75)), main = 'plot(table(X = rpois(100, 5), Y = rbinom(100, 10, 0.75)))' ) ``` You can also pass functions to plot. See [`curve()`](https://www.rdocumentation.org/packages/graphics/topics/curve) for more examples. ```{r} plot( sin, from = -pi, to = 2 * pi, main = 'plot(sin, from = -pi, to = 2 * pi)' ) ``` Use the axis function to give fine control over how the axes are created. See [`axis()`](https://www.rdocumentation.org/packages/graphics/topics/axis) and [`Axis()`](https://www.rdocumentation.org/packages/graphics/topics/Axis) for more info. ```{r} plot( sin, from = -pi, to = 2 * pi, axes = FALSE, main = 'plot(sin, axes = FALSE, ...); axis(1, ...); axis(2)' ) axis( 1, # bottom axis pi * (-1:2), c(expression(-pi), 0, expression(pi), expression(2 * pi)) ) axis(2) # left axis ``` Further graphical parameters can be set using [`par()`](https://www.rdocumentation.org/packages/graphics/topics/par). See [`with_par()`](https://www.rdocumentation.org/packages/withr/topics/with_par) for the best way to use `par()`. ```{r} old_pars <- par(las = 1) # horizontal axis labels plot((1:100) ^ 2, main = 'par(las = 1); plot((1:100) ^ 2)') par(old_pars) # reset parameters ```
- Label points in the scatter plot
- Scatter plots with multiple groups
This article describes how create a scatter plot using R software and ggplot2 package. The function geom_point() is used.
Related Book:
GGPlot2 Essentials for Great Data Visualization in R
mtcars data sets are used in the examples below.
Simple scatter plots are created using the R code below. The color, the size and the shape of points can be changed using the function geom_point() as follow :
Note that, the size of the points can be controlled by the values of a continuous variable as in the example below.
Read more on point shapes : ggplot2 point shapes
The function geom_text() can be used :
Read more on text annotations : ggplot2 - add texts to a plot
Add regression lines
The functions below can be used to add regression lines to a scatter plot :
- geom_smooth() and stat_smooth()
- geom_abline()
geom_abline() has been already described at this link : ggplot2 add straight lines to a plot.
Only the function geom_smooth() is covered in this section.
A simplified format is :
- method : smoothing method to be used. Possible values are lm, glm, gam, loess, rlm.
- method = “loess”: This is the default value for small number of observations. It computes a smooth local regression. You can read more about loess using the R code ?loess.
- method =“lm”: It fits a linear model. Note that, it’s also possible to indicate the formula as formula = y ~ poly(x, 3) to specify a degree 3 polynomial.
- se : logical value. If TRUE, confidence interval is displayed around smooth.
- fullrange : logical value. If TRUE, the fit spans the full range of the plot
- level : level of confidence interval to use. Default value is 0.95
Change the appearance of points and lines
This section describes how to change :
- the color and the shape of points
- the line type and color of the regression line
- the fill color of the confidence interval
Note that a transparent color is used, by default, for the confidence band. This can be changed by using the argument alpha : geom_smooth(fill=“blue”, alpha=1)
Read more on point shapes : ggplot2 point shapes
Read more on line types : ggplot2 line types
This section describes how to change point colors and shapes automatically and manually.
Change the point color/shape/size automatically
In the R code below, point shapes, colors and sizes are controlled by the levels of the factor variable cyl :
Add regression lines
Regression lines can be added as follow :
Note that, you can also change the line type of the regression lines by using the aesthetic linetype = cyl.
The fill color of confidence bands can be changed as follow :
Change the point color/shape/size manually
The functions below are used :
- scale_shape_manual() for point shapes
- scale_color_manual() for point colors
- scale_size_manual() for point sizes
It is also possible to change manually point and line colors using the functions :
- scale_color_brewer() : to use color palettes from RColorBrewer package
- scale_color_grey() : to use grey color palettes
Read more on ggplot2 colors here : ggplot2 colors
The function geom_rug() can be used :
sides : a string that controls which sides of the plot the rugs appear on. Allowed value is a string containing any of “trbl”, for top, right, bottom, and left.
The functions geom_density_2d() or stat_density_2d() can be used :
Read more on ggplot2 colors here : ggplot2 colors
The function stat_ellipse() can be used as follow:
The number of observations is counted in each bins and displayed using any of the functions below :
- geom_bin2d() for adding a heatmap of 2d bin counts
- stat_bin_2d() for counting the number of observation in rectangular bins
- stat_summary_2d() to apply function for 2D rectangular bins
The simplified formats of these functions are :
- geom : geometrical object to display the data
- bins : Number of bins in both vertical and horizontal directions. The default value is 30
- fun : function for summary
The data sets diamonds from ggplot2 package is used :
Change the number of bins :
Or specify the width of bins :
Step 1/3. Create some data :
Step 2/3. Create the plots :
Create a blank placeholder plot :
Step 3/3. Put the plots together:
To put multiple plots on the same page, the package gridExtra can be used. Install the package as follow :
Arrange ggplot2 with adapted height and width for each row and column :
Read more on how to arrange multiple ggplots in one page : ggplot2 - Easy way to mix multiple graphs on the same page
Change colors manually :
Read more on ggplot2 colors here : ggplot2 colors
This analysis has been performed using R software (ver. 3.2.4) and ggplot2 (ver. 2.1.0)
Show me some love with the like buttons below... Thank you and please don't forget to share and comment below!!
Montrez-moi un peu d'amour avec les like ci-dessous ... Merci et n'oubliez pas, s'il vous plaît, de partager et de commenter ci-dessous!
Recommended for You!
More books on R and data science
Recommended for you
This section contains best data science and self-development resources to help you on your path.
Coursera - Online Courses and Specialization
Data science
- Course: Machine Learning: Master the Fundamentals by Standford
- Specialization: Data Science by Johns Hopkins University
- Specialization: Python for Everybody by University of Michigan
- Courses: Build Skills for a Top Job in any Industry by Coursera
- Specialization: Master Machine Learning Fundamentals by University of Washington
- Specialization: Statistics with R by Duke University
- Specialization: Software Development in R by Johns Hopkins University
- Specialization: Genomic Data Science by Johns Hopkins University
Popular Courses Launched in 2020
- Google IT Automation with Python by Google
- AI for Medicine by deeplearning.ai
- Epidemiology in Public Health Practice by Johns Hopkins University
- AWS Fundamentals by Amazon Web Services
Plot Beton Terrasse Point P
Trending Courses
- The Science of Well-Being by Yale University
- Google IT Support Professional by Google
- Python for Everybody by University of Michigan
- IBM Data Science Professional Certificate by IBM
- Business Foundations by University of Pennsylvania
- Introduction to Psychology by Yale University
- Excel Skills for Business by Macquarie University
- Psychological First Aid by Johns Hopkins University
- Graphic Design by Cal Arts
Books - Data Science
Our Books
- Practical Guide to Cluster Analysis in R by A. Kassambara (Datanovia)
- Practical Guide To Principal Component Methods in R by A. Kassambara (Datanovia)
- Machine Learning Essentials: Practical Guide in R by A. Kassambara (Datanovia)
- R Graphics Essentials for Great Data Visualization by A. Kassambara (Datanovia)
- GGPlot2 Essentials for Great Data Visualization in R by A. Kassambara (Datanovia)
- Network Analysis and Visualization in R by A. Kassambara (Datanovia)
- Practical Statistics in R for Comparing Groups: Numerical Variables by A. Kassambara (Datanovia)
- Inter-Rater Reliability Essentials: Practical Guide in R by A. Kassambara (Datanovia)
Others
- R for Data Science: Import, Tidy, Transform, Visualize, and Model Data by Hadley Wickham & Garrett Grolemund
- Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems by Aurelien Géron
- Practical Statistics for Data Scientists: 50 Essential Concepts by Peter Bruce & Andrew Bruce
- Hands-On Programming with R: Write Your Own Functions And Simulations by Garrett Grolemund & Hadley Wickham
- An Introduction to Statistical Learning: with Applications in R by Gareth James et al.
- Deep Learning with R by François Chollet & J.J. Allaire
- Deep Learning with Python by François Chollet
Want to Learn More on R Programming and Data Science?
Follow us by EmailOn Social Networks:
Plots Bé Ton Point Power Station
Click to follow us on Facebook and Google+ :
Comment this article by clicking on 'Discussion' button (top-right position of this page)