Forum Discussion
Graph positive numbers as negative
- 7 years ago
I don't think you can do this with the default visuals. Besides finding a custom visual in the store, here is how to do it with R scripting:
- First, follow this article if you don't have R scripting set up for PBI yet: https://docs.microsoft.com/en-us/power-bi/desktop-r-visuals
- Once set up, you should have R scripting as a visual option, click it and drag in your TIME and DEPTH columns (make sure it's TIME then DEPTH as that affects structure of what you plot with R), like so:
- Then, in R script editor, enter:
plot(dataset , ylim = rev(range(dataset["DEPTH"])) ,lwd=4 , type="l" , bty="n" , col=rgb(0.2,0.4,0.6,0.8) ,xaxt = "n") axis(1,at = unlist(dataset["TIME"]))
(credit to here for getting me started as I'm an R novice: https://www.r-graph-gallery.com/77-turn-y-axis-upside-down/) - Hit Run script button and you're all set:
Imagin a set of data as follows:
On a standard line graph, that will be line starting on 0,0 going to the right and climbing up:
However, I am trying to plot depth, and a positive depth value should be below cero.
First idea was a 'new meassure' turning DEPTH column into a negative value, so the excel input can still be positive:
DEPTH 2 = -[DEPTH]
But still the legend is negative.
How can I plot my positive value in this second way, or hide the "minus" on the Y axis if I just change the sign with a calculated column?
Thanks!!
I am a bit confused. Can you elaborate which part of the visual you call a legend? Is that the Y axis?
- SergioJG7 years agoFrequent VisitorYes sorry, Y axis. I need those numbers ro be positive, or not showing the "minus". Same as they are on the table. Or else, keep them positive, but plot them below the X axis, as shown on second graph, as those mean "deapth", which is positive going down.
Thanks for any suggestion!!- MarkLaf7 years agoSuper User
I don't think you can do this with the default visuals. Besides finding a custom visual in the store, here is how to do it with R scripting:
- First, follow this article if you don't have R scripting set up for PBI yet: https://docs.microsoft.com/en-us/power-bi/desktop-r-visuals
- Once set up, you should have R scripting as a visual option, click it and drag in your TIME and DEPTH columns (make sure it's TIME then DEPTH as that affects structure of what you plot with R), like so:
- Then, in R script editor, enter:
plot(dataset , ylim = rev(range(dataset["DEPTH"])) ,lwd=4 , type="l" , bty="n" , col=rgb(0.2,0.4,0.6,0.8) ,xaxt = "n") axis(1,at = unlist(dataset["TIME"]))
(credit to here for getting me started as I'm an R novice: https://www.r-graph-gallery.com/77-turn-y-axis-upside-down/) - Hit Run script button and you're all set:
- SergioJG7 years agoFrequent Visitor
Thanks MarkLaf,
I will try that in the upcoming days and let you know. On your example looks working exactly as I need!
Thank you very much for your time and support.
Sergio.