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

[Docs FR] Add inset example #3292

Open
KronosTheLate opened this issue Oct 13, 2023 · 5 comments · May be fixed by #4697
Open

[Docs FR] Add inset example #3292

KronosTheLate opened this issue Oct 13, 2023 · 5 comments · May be fixed by #4697
Labels
Axis related to `Axis()` objects documentation enhancement Feature requests and enhancements good first issue This should come with some instructions!

Comments

@KronosTheLate
Copy link
Contributor

Currently, searching for inset in the Makie docs returns nothing. If we wonder how to make an inset plot, we are left with googling forum discussions like this one and try to work it out.

It would be fantastic if there was a page in the documentation showing how to create an inset figure, which also explained what you need to be careful with when doing it (such as z-ordering and transparency).

@KronosTheLate KronosTheLate added the enhancement Feature requests and enhancements label Oct 13, 2023
@asinghvi17 asinghvi17 added good first issue This should come with some instructions! documentation labels Feb 6, 2024
@ffreyer ffreyer added the Axis related to `Axis()` objects label Aug 26, 2024
@sashansamarajeewa
Copy link

Hello,

I am a MSc in Computer Science student from the University of Stuttgart, Germany. I am currently following the course, Simulation Software Engineering (SSE).

For this course we need to select an open-source simulation software and make a small contribution to get familiar with it. I am interested in Makie and looking for a suitable topic to work on. There are no clear expectations as to what this contribution should be. It could be either a new feature, a tutorial, a documentation or a bug fix.

I am a newbie to the field of simulation softwares but eager to learn and to contribute something useful. Is it possible to work on this "good first issue" if it is still relevant?

If yes, I would like your input and guidance on how to get started so that I can give a meaningful contribution.

If no, could you please point me to something else you would recommend that I can contribute to in Makie?

Thank You

@ffreyer
Copy link
Collaborator

ffreyer commented Nov 18, 2024

Sure you can work on this. More documentation is always good to have.

I think this issue comes in two parts. The first part would just be about how to make an inset Axis - with some code that is easy to copy and modify. There should be enough information about this on discourse. In fact, you can probably just summarize the thread that's linked here.

If you're new to git and/or github, I would recommend you figure that stuff out at this point. I.e. forking the Makie repository, creating a branch where you commit your changes, uploading that to your fork and creating a (draft) pull request to this repository. The tutorial should be a new file in https://github.com/MakieOrg/Makie.jl/tree/master/docs/src/tutorials and needs to be included in https://github.com/MakieOrg/Makie.jl/blob/master/docs/makedocs.jl. The pull request includes a docs preview so you can also use it to check that everything is working as intended.

The second part would be adding related information, e.g:

  • pixel units vs relative units for Axis size and placement (the layouting tutorials probably explain this)
  • z ordering (probably useful to skim Axis.jl and maybe lineaxis.jl for translate!() calls to see what range of z values it occupies)
  • How to mark the section that the inset axis shows (Iirc there is a discourse thread on this)
  • How to add an inset Axis on top of other axis types (Iirc there is a discourse thread for LScene or Axis3, but this may also not work well enough to be worth including)

Hopefully these are easy questions to answer after going through a few threads on discourse. But even if that's not the case or you run out of time, just having a basic tutorial on inset Axis would be a meaningful contribution.

@jkrumbiegel
Copy link
Member

I think we should probably just add a function inset_axis! that does the basic setup automatically. That function would also need some docs but in general that will be a better user experience than having complex docs on the manual setup.

The function signature would be something like inset_axis!(ax::Axis, xs, ys) and you could set a space keyword to decide if the rectangle should be in relative or screen or data coordinates.

@sashansamarajeewa
Copy link

Thank you for the inputs. I will try to come up with a PR to address this.

@sashansamarajeewa sashansamarajeewa linked a pull request Dec 31, 2024 that will close this issue
2 tasks
@sashansamarajeewa
Copy link

Please refer to the potential PR for closing the issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Axis related to `Axis()` objects documentation enhancement Feature requests and enhancements good first issue This should come with some instructions!
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants