Get certified in Microsoft Fabric—for free! For a limited time, the Microsoft Fabric Community team will be offering free DP-600 exam vouchers. Prepare now
Hello,
I'm a deep python user so would like to use it in Power BI. I have tried matplotlib and seaborn library - there are no error to use them as long as I put "plt.show()" in the scripts. However, these are all static charts and I would like to use some interactive features using Plotly Module. When I use plotly, there always shows an error of "no image created".
I know there is solutions in R to use Plotly but is there a solution to use Plotly with Python in Power BI?
Thank you.
Solved! Go to Solution.
Hi @Anonymous ,
I'm afraid that Plotly is not supported in Power BI currenly.
Based on the blog, only the following Python packages (non-Intel MKL) are currently supported for use in your Power BI reports.
In addition, you could refer to this similar thread which should make sense.
Best Regards,
Cherry
Hi there!
I recently tried to create a gauge chart with dial in Power BI using python script. There are 2 variants which I attempted:
1. Using Matplotlib pyplot
2. Using plotly
The one using Matplotlib is actually a polar chart with it's bottom half invisible. To develop a gauge chart is more of a workaround but it's implementation in Power BI though is pretty straightforward and more compatible in terms of display. No workarounds needed! Simply create the custom visual you need and show it in the BI report.
On the other hand, the variant using Plotly has better & clear features as there is a builtin functionality meant for Gauge charts. While it's super simple to create the kind of gauge chart you need, displaying it inside the python visual in PBI is a hassle! You are constantly bombarded with the following error:
To solve this, I had to convert the plot to an image using kaleido.
fig.write_image('gauge_chart.png', engine='kaleido')
Then I loaded the image into Matplotlib with this:
# Read the saved image and display it using matplotlib
img = Image.open('gauge_chart.png')
plt.imshow(img)
plt.axis('off') # Hide the axes
plt.show()
And voila! The plot will now appear in the python visual.
Though the flexibility to develop better gauge charts is present in Plotly, it's implementation is quite a puzzle! And this needs more dependencies unlike the Matplotlib version!
Had to use all of these:
import plotly.graph_objects as go
import pandas as pd
import plotly.io as pio
from PIL import Image
import matplotlib.pyplot as plt
Hope this helps someone!
Thanks!
Hi @v-piga-msft, although not ideal, a static plotly image would be ok for now, but this requires fig.write_image('test.png') which requires kaleido. What are the chances of having kaleido added to the list of approved libraries, so that users can at least view advanced plotly graphs that are not available in matplotlib or seaborn, like their go sankey plot...?
Hi,
You could take a look at this blog post. It describes how to add an interactive Plotly Chart in Power BI. Its quite easy when you follow these steps.
Kind regards,
Steve.
Proud to be a Super User!
Awesome Keyboard Shortcusts in Power BI, thumbs up if you like the article
My Community Blog Articles (check them out!)
My Blog - Power M code to automatically detect column types -
How to create test data using DAX!
Hi,
The link is working for me, but I also added it on the blog over here.
Kind regards, Steve
Proud to be a Super User!
Awesome Keyboard Shortcusts in Power BI, thumbs up if you like the article
My Community Blog Articles (check them out!)
My Blog - Power M code to automatically detect column types -
How to create test data using DAX!
I am able now to make a plotly graph inside Power BI using python.
However, Power BI shows my graph in a new window of my browser (instead of showing into the Power BI framework).
The last line of my code is
fig.show()
How could I print it into the Power BI framework?
use fig.write_image('test.png'). but it's a static image, can't be interactive.
I am using this example sample code:
I believe that this was always the case and that Plotly is still not integrated in Power BI via Python. Meaning, it still won't show graphs in Power BI. I still can't understand why Plotly works with R and not Python. To the Power BI team at Microsoft, please fix this.
Hi any updates on how to use plotly with Python script in Power BI, I can use it but the visualization come into a browser not into the power bi dashboard.
Any luck on plotly and Power BI?
Nop the only way is to do it In R not in python
Just so that I understand correctly. Plotly in Python only works with R?
plotly in Power BI only works with R
That is really dissapointing news.
Hi @Anonymous ,
I'm afraid that Plotly is not supported in Power BI currenly.
Based on the blog, only the following Python packages (non-Intel MKL) are currently supported for use in your Power BI reports.
In addition, you could refer to this similar thread which should make sense.
Best Regards,
Cherry
Check out the October 2024 Power BI update to learn about new features.
Learn from experts, get hands-on experience, and win awesome prizes.
User | Count |
---|---|
117 | |
108 | |
108 | |
93 | |
70 |
User | Count |
---|---|
173 | |
135 | |
131 | |
96 | |
94 |