| Summary: | RFE: ability to invert an axis | ||
|---|---|---|---|
| Product: | [Applications] LabPlot2 | Reporter: | frederic.parrenin <frederic.parrenin> |
| Component: | general | Assignee: | Alexander Semke <alexander.semke> |
| Status: | REPORTED --- | ||
| Severity: | normal | CC: | ameya.patwardhan99 |
| Priority: | NOR | ||
| Version First Reported In: | 2.8.2 | ||
| Target Milestone: | --- | ||
| Platform: | Other | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
| Attachments: |
Example graph built using Gnumeric
Example .gnumeric file to demonstrate the graphing ability Example with two y-ranges gnumeric vs labplot example with two y-axis and with the properties explorer for the additional y-axis. example project file demoing LabPlot's way of handling data ranges and axes |
||
|
Description
frederic.parrenin@univ-grenoble-alpes.fr
2022-03-23 18:19:34 UTC
(In reply to frederic.parrenin@univ-grenoble-alpes.fr from comment #0) > Hello, I am a scientist using linux and used to plotting software. > Apart from matplotlib, when I want to plot something with a GUI, I use > Gnumeric. > I recently discovered labplot, which seems to be a very interesting open > source plotting software, something I have been looking for for a long time. Thank you for you interest in LabPlot! > Something I did not find in labplot (maybe I missed it) was a way to invert > an axis, e.g. a vertical axis oriented toward the bottom. If I switch the > "start" and "end" values, it has no impact. To get what you want you need to interchange the values for start and end in the properties of the plot where the data region to be plotted is defined. So, just keep the axis range at "Auto" and set the proper data range in the properties of the plot. Does this work for you? > I think it should be as obvious as a check box near the axis scale. Yes, we had this request already a couple of times. We'll think about how to do a quick option for "axis swap" in 2.10. > To get what you want you need to interchange the values for start and end in the properties of the plot where the data region to be plotted is defined. So, just keep the axis range at "Auto" and set the proper data range in the properties of the plot. Does this work for you?
Yes, it works, but this is very counter-intuitive for me.
I don't understand why you have to set the axis range at two different places.
(In reply to frederic.parrenin@univ-grenoble-alpes.fr from comment #2) > > To get what you want you need to interchange the values for start and end in the properties of the plot where the data region to be plotted is defined. So, just keep the axis range at "Auto" and set the proper data range in the properties of the plot. Does this work for you? > > Yes, it works, but this is very counter-intuitive for me. > I don't understand why you have to set the axis range at two different > places. You don't need to set it at two different places, you only need to do this for the plot itself and keep the "auto"-option for the ranges in the axis on its default value. In LabPlot you can have an arbitrary number of axes that you can freely position on the plot and format. The data region itself that is being plotted - start and end values, the format (numeric vs. DateTime) and the scaling (linear, etc.) - is defined in the plot properties. The initial axes created when you create a new plot automatically set the start end end values to the start and end values of the data region but also this can be changed. So, you have a bigger flexibility which enables certain visualizations that are hardly possible with other applications but it's a bit "different", yes. We're looking how to improve the documentation and our examples for this as well as the UX. Created attachment 147738 [details]
Example graph built using Gnumeric
I don't know if it is because I am more used to it, but the Gnumeric logic makes more sense to me.
In Gnumeric, the axes and plots are on the same level of the hierarchy, and for each XY plot you can choose which X- and Y-axis to use.
This allows for example to have various plots which share the same X-axis but with different Y-axes.
I attach an example of such a graph done with Gnumeric.
I am not sure how easy it is to do that in Labplot.
(In reply to frederic.parrenin@univ-grenoble-alpes.fr from comment #4) > Created attachment 147738 [details] > Example graph built using Gnumeric > > I don't know if it is because I am more used to it, but the Gnumeric logic > makes more sense to me. > In Gnumeric, the axes and plots are on the same level of the hierarchy, and > for each XY plot you can choose which X- and Y-axis to use. I'm not familiar with gnumeric but I'll check it. Is it possible in gnumeric to add additional axes like on the last example plot in this article https://www.linuxjournal.com/article/3743?page=0,0 ? Or like on the last example plot in https://labplot.kde.org/2021/10/27/multi-axes-made-easy/ ? > This allows for example to have various plots which share the same X-axis > but with different Y-axes. > I attach an example of such a graph done with Gnumeric. > I am not sure how easy it is to do that in Labplot. Your example looks very interesting. Do you have here multiple xy-plots or how this is implemented? Can you please attach your gnumeric project so I can have a look? Created attachment 147745 [details] Example .gnumeric file to demonstrate the graphing ability Thank you for your answer. > I'm not familiar with gnumeric but I'll check it. Is it possible in gnumeric to add additional axes like on the last example plot in this article > https://www.linuxjournal.com/article/3743?page=0,0 ? > Or like on the last example plot in https://labplot.kde.org/2021/10/27/multi-axes-made-easy/ ? Yes, I believe this is possible. > Your example looks very interesting. Do you have here multiple xy-plots or how this is implemented? Can you please attach your gnumeric project so I can have a look? In my scientific field (paleoclimatology), we use this kind of stacked graphs very often. I attach a similar but simpler example here. Note also the custom ticks on the top axis. (In reply to frederic.parrenin@univ-grenoble-alpes.fr from comment #6) > Created attachment 147745 [details] > Example .gnumeric file to demonstrate the graphing ability > > Thank you for your answer. > > > I'm not familiar with gnumeric but I'll check it. Is it possible in gnumeric to add additional axes like on the last example plot in this article > > https://www.linuxjournal.com/article/3743?page=0,0 ? > > Or like on the last example plot in https://labplot.kde.org/2021/10/27/multi-axes-made-easy/ ? > > Yes, I believe this is possible. > > > Your example looks very interesting. Do you have here multiple xy-plots or how this is implemented? Can you please attach your gnumeric project so I can have a look? > > In my scientific field (paleoclimatology), we use this kind of stacked > graphs very often. Yes, we can also do stacked graphs (multiple plots arranged in a vertical layout) but I think the difference between gnumeric and lapblot here is a different one. See the text below. > I attach a similar but simpler example here. Yes, this is completely different from what we do in LabPlot. Your example plot won't be possible at the moment in LabPlot since we miss that option for the "effective range" where you set the range 0% - 40% of the total plot range for the first axis. I attached a screenshot of how your example data would like in LabPlot (file gnumeric_vs_labplot.png). I created another example with one more y-axis which is "assigned" to the first y range and where the start point is modified (file example_two_y-axes.png). Note, this logic is different to that "effective start" in gnumeric. In this example I also re-scaled the values - this is helpful if you plot the same data but want to highlight a certain region of it and also want to use different units (a 1:1 mapping is possible via a conversion factor like in the following examples: * https://de.wikipedia.org/wiki/Wiensches_Verschiebungsgesetz#/media/Datei:BlackbodySpectrum_lin_150dpi_de.png * https://de.wikipedia.org/wiki/Elektromagnetisches_Spektrum#/media/Datei:Electromagnetic_spectrum_-de_c.svg * https://labplot.kde.org/2020/12/28/the-universe-full-of-hydrogen-and-a-new-feature-in-labplot/ - first plot here * Herzsprung-Russel-Diagram * etc. I also added a screenshot of the properties explorer where you can see the properties of the additional y-axis that I added (file example_two_y-axes_properties_explorer.png). I don't see how to implement such a plot in gnumeric right now but maybe I'm missing the proper settings. Having said this, I see advantages for both approaches (LabPlots's and gnumeric's). I like LabPlot's approach more but I'm definitely too biased here and if we also want to support plots like in your examples, which makes a lot of sense, we need to re-think our current implementation and see how to also enable other use-cases like in your examples. > Note also the custom ticks on the top axis. Yes, this is also possible in LabPlot as shown on gnumeric_vs_labplot.png. Created attachment 147748 [details]
Example with two y-ranges
Created attachment 147749 [details]
gnumeric vs labplot
Created attachment 147750 [details]
example with two y-axis and with the properties explorer for the additional y-axis.
Thank you for your answer. Could you please share your LabPlot file, so that I could study it? I need to study more the LabPlot logic, but really I think there should be a way for several plots to share the same X- or Y-axis. So the axis object should be outside the plot object, IMO. Created attachment 147754 [details]
example project file demoing LabPlot's way of handling data ranges and axes
(In reply to frederic.parrenin@univ-grenoble-alpes.fr from comment #11) > Thank you for your answer. I thank you for the productive discussion. > Could you please share your LabPlot file, so that I could study it? I attached the project file. Please check. This project was created with the current beta version of 2.9 that we announced recently: https://labplot.kde.org/2022/03/22/labplot-2-9-beta/ Would it be possible for you to also work with this version? > I need to study more the LabPlot logic, but really I think there should be a > way for several plots to share the same X- or Y-axis. > So the axis object should be outside the plot object, IMO. Sharing the same axis is possible in LabPlot, it's a bit different from the other subject we discussed here, though. We started working on the more detailed documentation https://userbase.kde.org/LabPlot, which is still far from being complete... And we prepared a couple of demo videos introducing the basic features of LabPlot - https://www.youtube.com/channel/UCoxs-QOKb4SdIk4TMbrTzlQ. Please check if this is also helpful for you. Beside this, we have a room on Matrix which we can use to have discussions about this kind of topics (https://labplot.kde.org/support/). This is maybe easier than doing it in a bug ticketing system. *** Bug 410175 has been marked as a duplicate of this bug. *** |