Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add abline! which creates a straight line according to the formula b+… #126

Merged
merged 3 commits into from
Feb 3, 2016
Merged

Conversation

pkofod
Copy link
Contributor

@pkofod pkofod commented Feb 2, 2016

…a*x.

Implements #125 . The syntax matches with the name such that abline!(a, b) adds a straight line b+a*x based on only x-min and x-max.

Does it match with your usual style of coding @tbreloff or are there any changes you would like?

@tbreloff
Copy link
Member

tbreloff commented Feb 2, 2016

Thanks... There's a couple things...

  • the method should take a "plt::Plot" as the first argument and pass that as the first argument in your inner call to 'plot!'. Then you can add the convenience "abline!(args...; kw...) = abline!(current(), args...; kw...)"
  • min/max should look at all series, not just the first

Thanks for the PR

On Feb 2, 2016, at 4:06 PM, Patrick Kofod Mogensen [email protected] wrote:

…a*x.

Implements #125 . The syntax matches with the name such that abline!(a, b) adds a straight line b+a*x based on only x-min and x-max.

Does it match with your usual style of coding @tbreloff or are there any changes you would like?

You can view, comment on, or merge this pull request online at:

#126

Commit Summary

Add abline! which creates a straight line according to the formula b+a*x.
File Changes

M src/recipes.jl (5)
Patch Links:

https://github.com/tbreloff/Plots.jl/pull/126.patch
https://github.com/tbreloff/Plots.jl/pull/126.diff

Reply to this email directly or view it on GitHub.

@pkofod
Copy link
Contributor Author

pkofod commented Feb 2, 2016

Great suggestions. I just amended the changes, but I think you should be able to see the changes.

@pkofod pkofod mentioned this pull request Feb 2, 2016
…a*x, and export abline!

Also add utility functions xmin(plt::Plot) and xmax(plt::Plot).
@pkofod
Copy link
Contributor Author

pkofod commented Feb 2, 2016

Do you want xmin and xmax be exposed to the users?

@pkofod
Copy link
Contributor Author

pkofod commented Feb 3, 2016

The failing CI seems to be comming from Gadfly markers, so it must be from the state of dev, not my PR. Added Base.extrema(plt::Plot) and changed code accordingly.

@tbreloff
Copy link
Member

tbreloff commented Feb 3, 2016

Yes I need to track down the markers behavior... Don't worry about that.

This looks good... Can you post an example png here for reference? I'll merge today.

On Feb 3, 2016, at 4:42 AM, Patrick Kofod Mogensen [email protected] wrote:

The failing CI seems to be comming from Gadfly markers, so it must be from the state of dev, not my PR. Added Base.extrema(plt::Plot) and changed code accordingly.


Reply to this email directly or view it on GitHub.

@pkofod
Copy link
Contributor Author

pkofod commented Feb 3, 2016

I will do that. Do you want xmin, xmax and extrema exported?

@pkofod
Copy link
Contributor Author

pkofod commented Feb 3, 2016

using Plots

# The first series contains xmax, the second contains xmin
x1 = [1; 4; 10; 30]
y1 = [0; 10; 3; 5]

x2 = [2; 8; 15; 35]
y2 = [3; 5; 4; 8]

plot([x1 x2], [y1 y2])

abline!(0.2, 2)

#or
# plt = plot([x1 x2], [y1 y2])
# abline!(plt, 0.2, 2)

png("abline")

abline

@tbreloff
Copy link
Member

tbreloff commented Feb 3, 2016

No... there's no need to export extrema, as it's defined in base, and I don't think people should need xmin/xmax directly (and it can always be qualified). I just have a feeling I might want to change those names someday.

On Feb 3, 2016, at 8:17 AM, Patrick Kofod Mogensen [email protected] wrote:

I will do that. Do you want xmin, xmax and extrema exported?


Reply to this email directly or view it on GitHub.

@pkofod
Copy link
Contributor Author

pkofod commented Feb 3, 2016

Okay! I guess you could always deprecate them, but on the other hand I don't see a lot of requests for them either in other issues :) They'll remain unexported. Then I think we should be good to merge. Do you want me to squash the commits?

tbreloff added a commit that referenced this pull request Feb 3, 2016
Add abline! which creates a straight line according to the formula b+…
@tbreloff tbreloff merged commit bce865f into JuliaPlots:dev Feb 3, 2016
@tbreloff
Copy link
Member

tbreloff commented Feb 3, 2016

Merged... thanks for the contribution. I'm happy to get more people involved to push this forward.

t-bltg pushed a commit that referenced this pull request Oct 6, 2022
t-bltg added a commit that referenced this pull request Oct 6, 2022
* use Dates

* Add compat for RecipesBase

* Fix badges

* Plots test

* Fix travis

* Forgot using

* Update .travis.yml

Co-Authored-By: Anshul Singhvi <[email protected]>

* Use ds/rewrite

* Try with --project


Credit: Fredrik Ekre

* Use latest stable julia version

* Allow failures on MacOS

* Docs deployment

* Literate + enable deploy

* Update Project.toml

* fix missing comma

* Fix error

* try fixing repo name

* small change to trigger CI

* play better with Literate

* allow type recipes for `Number`s in arrays and surfaces

* small fixes

* skip maybestrings

* fix ambiguity

* Add badge

* Fix build badge link

* Show status only for master branch

* Fix README docs link

* remove subdomain

* Create TagBot.yml

* fix surface type recipe

* bump version

* fix error for grouping

* bump version

* further grouping fixes

* bump version

* fix plotting functions

* bump version

* downgrade version

* fix plotting rowvector of functions

* bump version

* support parametric type in `@userplot`

* add docs for parametric type in `@userplot`

* bump version

* fix grouping

* bump version

* bump PlotUtils compat

* bump version

* add zulip chat link to readme [skip ci]

* add zulip link [skip ci]

* Fix typo in docs

`AbstractArry` -> `AbstractArray`

* add hook after series decomposition (#52)

* add process_sliced_series_attributes!

* export process_slice_series_attrributes!

* remove `kw`

* Update Project.toml

[skip ci]

* Initial pass at CI

* Add script from Plots

* Update to MakieRecipes

* comment out artifact uploads

* Plots test

* CairoMakie tests

* Forgot using

* Update .travis.yml

Co-Authored-By: Anshul Singhvi <[email protected]>

* Use ds/rewrite

* Try with --project

* Another try

Credit: Fredrik Ekre

* Import examples from MakieRecipes

* add separately

* dev

* $(mktemp -d)

* Update .github/workflows/CI.yml

Co-Authored-By: Anshul Singhvi <[email protected]>

* use temp_for_test

* fix typo

* Update .github/workflows/CI.yml

* ensure that images are uploaded

* Pass a begin block to testset

* fix the macro

* seriously, I forgot .png?

* Update .travis.yml

* Fix split_attribute (#53)

* Fix a typo in the `recipe_pipeline!` constructor (#54)

* bump version

* fix time and period recipes

* bump version

* Fix typo (#56)

* implement `Base.axes` for `Volume`

* bump version

* Update group.jl

* implement iterate for Surface and Volume

* bump version

* use NaNMath log functions

* Add one_arg_shorthands macro (#73)

* Add one_arg_shorthands macro

* export one_arg_shorthands

* patch version [skip ci]

* Add :mesh3d as 3d series type (#62)

* 0.1.12 [skip ci]

* add compat for NaNMath

* dispatch processing of axis args on the plot object (#63)

* dispatch processing of axis args on the plot object

* Update type_recipe.jl

* Update type_recipe.jl

* Update type_recipe.jl

* add to API

* Update api.jl

* 0.1.13

* remove one_arg_shorthands macro (#74)

It didn't work out as intended

* 1.1.0

* more friendly error when x,y shape mis-match

* AbstractDict plot sorted

* more friendly error when x,y shape mis-match (#65)

* more friendly error when x,y shape mis-match

* don't touch z

* Update src/user_recipe.jl

Co-authored-by: Daniel Schwabeneder <[email protected]>

* switch to github-actions and update runtests.jl to run Plots test images

* update CI.yml

* keep makie tests

* move `signature_string` to RecipesPipeline

* minor version bump

* Revert "minor version bump"

This reverts commit 63c713b7808adf305484a9724cef9eabae2a0702.

* move `warn_on_recipe_aliases!` from Plots and add some `@nospecialize`

* add CompileBot

* minor version bump

* add precompile statements

* bump version

* add new line at end of file

* add recipe for list of NamedTuples

* add newline

* update tagbot action

* add recipe for list of NamedTuples

* move `warn_on_recipe_aliases!` from Plots and add some `@nospecialize`

* update tagbot action

* Fix broken histogram and stepbins plotting

* Increase package version to v0.2.1

* Update precompile_*.jl file

* add TestImages test dependency

* refine friendly error (#75)

* Update precompile_*.jl file

* don't stringify argument to `warn_on_recipe_aliases!` early
needs matching Plots changes

* minor release

* add `@nospecialize` annotations

* release

* update CompileBot

* update TESTCMD in CI

* fix TESTCMD in compilebot action

* Update precompile_*.jl file

* release

* Update README.md

[skip ci]

* don't catch all the MethodErrors (#87)

* don't catch all the MethodErrors

* remove `@show`

* 0.3.3 [skip ci]

* add mesh3d for GR

* v0.3.4

* Small improvement in inferrability (#82)

* 1.1.2 [skip ci]

* CI: tentative fix

* CI: add LinearAlgebra (#96)

Co-authored-by: t-bltg <[email protected]>

* Test for error value from `apply_recipe` fallback. (#95)

* v0.3.5 [skip ci]

* Add `Downloads` test dependency

Complement #3766

* Remove try/catch needed for compatibility with Plots.jl v1.21.0 and earlier (#97)

* Improve groups perf from O(MxN) to O(M) (#98)

* Update MakieRecipes URL

* Update precompile_*.jl file (#91)

* v0.3.6 [skip ci]

* Revert try/catch for patch version

* v0.3.7 (#101) [skip ci]

* v0.4.0 (#102) [skip ci]

* Avoid Vararg UnionAll dispatch (#104)

* Avoid Vararg UnionAll dispatch

Fixes JuliaPlots/RecipesPipeline.jl#103

* fix fix

Co-authored-by: Simon Christ <[email protected]>

* 0.4.1 [skip ci]

* move layout macro from plots (#85)

* 1.2.0 [skip ci]

* remove pct

* 1.2.1 [skip ci]

* Update Project.toml

* respect defaults for fillrange and ribbon (#106)

* respect defaults for fillrange and ribbon

* remove fillrange and ribbon handling from RecipesPipeline

* update ci

* set version

* Update CI.yml

* move documentation to gh-actions

* update run commands

* Update Documentation.yml

* Allow `NanMath` 1.0 - bump version (#108)

Co-authored-by: t-bltg <[email protected]>

* Fix `unzip` for empty vectors (#110)

* 0.5.2 [skip ci]

* update url with https://docs.juliaplots.org/stable/generated/supported/#Keyword-Arguments (#89)

* Update precompile_*.jl file (#109)

Co-authored-by: t-bltg <[email protected]>

* run  snoopcompile on pust to master only

* update compat bounds (#111)

* 0.6.0 [skip ci]

* Update precompile_*.jl file (#112)

Co-authored-by: t-bltg <[email protected]>

* `SnoopCompile` labels

* use ssh key for `TagBot` (#91)

* fix julia scripts in markdown (#90)

* add missing language specification in md

* replace type with struct

* fix `SnoopCompile` (#113)

* update compat bounds

* run snoop on master only

* update precompile

* Update precompile_*.jl file (#114)

Co-authored-by: t-bltg <[email protected]>

* 0.6.1 [skip ci]

* fix plotting `Union{Missing,Real}` arrays (#116)

* Update precompile_*.jl file (#115)

Co-authored-by: t-bltg <[email protected]>

* 0.6.2 [skip ci]

* fix formatters (#118)

* 0.6.3 [skip ci]

* Update precompile_*.jl file (#117)

Co-authored-by: BeastyBlacksmith <[email protected]>

* Create invalidations.yml (#93)

This is based on https://github.com/julia-actions/julia-invalidations. Adding such checks came up in https://discourse.julialang.org/t/potential-performance-regressions-in-julia-1-8-for-special-un-precompiled-type-dispatches-and-how-to-fix-them/86359. I suggest to add this check here since this package is widely used as a dependency.

* rework precompilation using `SnoopPrecompile` - document `@layout` (#94)

* document `@layout`

* rewok precompile statements using `SnoopPrecompile`

* add ci

* bump julia to `1.6` for failing CI

* 1.3.0

* more efficient `DefaultsDict` iteration (#121)

* bump julia version in `ci` (#122)

* 0.6.4

* Add methods to access separate keysets of the DefaultsDict (#124)

* bump version [skip ci]

* DefaultsDict - correctness and performance tweaks for large numbers of series (#126)

* 0.6.6 [skip ci]

* Fix a deprecated syntax in docs of macro `@recipe` (#95)

* fix broken docs

* remove

* remove un-needed files

* RP tests

Co-authored-by: Daniel Schwabeneder <[email protected]>
Co-authored-by: Sebastian Micluța-Câmpeanu <[email protected]>
Co-authored-by: Sebastian Micluța-Câmpeanu <[email protected]>
Co-authored-by: Anshul Singhvi <[email protected]>
Co-authored-by: Lirimy <[email protected]>
Co-authored-by: mtsch <[email protected]>
Co-authored-by: Simon Christ <[email protected]>
Co-authored-by: JonasIsensee <[email protected]>
Co-authored-by: Michael Abbott <me@pseudomac>
Co-authored-by: Benoit Pasquier <[email protected]>
Co-authored-by: Michael Krabbe Borregaard <[email protected]>
Co-authored-by: Adrian Dawid <[email protected]>
Co-authored-by: Moelf <[email protected]>
Co-authored-by: Oliver Schulz <[email protected]>
Co-authored-by: daschw <[email protected]>
Co-authored-by: Moelf <[email protected]>
Co-authored-by: Jeremy Bejanin <[email protected]>
Co-authored-by: t-bltg <[email protected]>
Co-authored-by: Tim Holy <[email protected]>
Co-authored-by: Nicholas Bauer <[email protected]>
Co-authored-by: Mike Keehan <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Christopher Rackauckas <[email protected]>
Co-authored-by: Kristoffer Carlsson <[email protected]>
Co-authored-by: Yuto Horikawa <[email protected]>
Co-authored-by: Rafael Schouten <[email protected]>
Co-authored-by: MrHenning <[email protected]>
Co-authored-by: BeastyBlacksmith <[email protected]>
Co-authored-by: Hendrik Ranocha <[email protected]>
Co-authored-by: Ryan <[email protected]>
Jonas-a-Zimmermann pushed a commit to Jonas-a-Zimmermann/Plots.jl that referenced this pull request Oct 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants