Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.
Hi,
I used the Python visual to embed a scatter in my report.
I would like the scatter to fill the screen. I have 2 issues with that:
1. The python visual comes with a lot of padding. I have huge white space between the border of the visual and the axis of the scatter
2. The scatter comes out square. I don't know how to make its width larger than its height, even if the visual wrapping it is more wide than tall
Can this be solved in for Python visual or for R visual?
Thanks,
Barak
Solved! Go to Solution.
The padding size should be decided by the python code you are using. Could you share some part of the python code for further analysis?
Community Support Team _ Jimmy Tao
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
This is the code as it appears in Power BI:
import matplotlib.pyplot as plt import pandas as pd import seaborn as sns sns.set_palette("pastel") #print (sns.get_dataset_names()) df = pd.DataFrame(dict(x=dataset['Probability01'], y=dataset['Impact110'])) #plt.scatter(x=dataset['Probability01'],y=dataset['Impact110'],s=dataset['Booking']/10000) lm=sns.lmplot(x='Probability01',y='Impact110',data=dataset,hue='Proj_Type',scatter_kws={'s': dataset['Booking']/10000}) #axes=lm.axes #axes[0,0].set_ylim(-1,) #axes[0,1].set_xlim(0,) plt.xlim(-0.1,1.1) plt.ylim(-1,11) for i, txt in enumerate(dataset["Project Name"]): plt.annotate(txt, (df.x.iat[i],df.y.iat[i]),fontsize=15) plt.show()
and this is how it appears in spyder:
# Prolog - Auto Generated # import os, matplotlib.pyplot, uuid, pandas os.chdir(u'C:/Users/barakb/PythonEditorWrapper_2dac1e75-9317-429d-ac0d-8f5d9b7f0e89') dataset = pandas.read_csv('input_df_55fe400c-1be7-4c16-b559-82ca736d13b9.csv') matplotlib.pyplot.figure(figsize=(10,10)) matplotlib.pyplot.show = lambda args=None,kw=None: matplotlib.pyplot.savefig(str(uuid.uuid1())) # Original Script. Please update your script content here and once completed copy below section back to the original editing window # import matplotlib.pyplot as plt import pandas as pd import seaborn as sns sns.set_palette("pastel") #print (sns.get_dataset_names()) df = pd.DataFrame(dict(x=dataset['Probability01'], y=dataset['Impact110'])) #plt.scatter(x=dataset['Probability01'],y=dataset['Impact110'],s=dataset['Booking']/10000) lm=sns.lmplot(x='Probability01',y='Impact110',data=dataset,hue='Type',scatter_kws={'s': dataset['Booking']/10000}) #axes=lm.axes #axes[0,0].set_ylim(-1,) #axes[0,1].set_xlim(0,) plt.xlim(-0.1,1.1) plt.ylim(-1,11) for i, txt in enumerate(dataset["Project Name"]): plt.annotate(txt, (df.x.iat[i],df.y.iat[i]),fontsize=15) plt.show() # Epilog - Auto Generated # os.chdir(u'C:/Users/barakb/PythonEditorWrapper_2dac1e75-9317-429d-ac0d-8f5d9b7f0e89')
BTW1: I don't think that's a Python padding, since I changed the visual background to transparent and put a rectangle behind it.
While the plot area hides the rectangle, the padding/whitespace doesn't hide it.
BTW2: There is not much padding when the visual is small. The padding comes intoplace when I enlarge the visual to fill the screen.
Barak
OK,
Solved it with the size and aspect parameters.
Barak
Hi Barak,
Can you explain better what you mean by "Solved it with the size and aspect parameters."? Where are those parameters? Did you change them in powerbi or in the code in python?
@barakb32 wrote:OK,
Solved it with the size and aspect parameters.
Barak
Hi @t-vicarm ,
These are parameters of the python command seaborn.lmplot.
The adjusted command looks like this:
lm=sns.lmplot(x='Probability01',y='Impact110',data=dataset,hue='Proj_Type',fit_reg=False,size=10,aspect=1.5,scatter_kws={'s': dataset['Booking']/2000})
Barak
Hi
Just to add more information, for matplotlib is possible to control the padding using the tight_layout() options.
matplotlib.pyplot.tight_layout() matplotlib.pyplot.show()
In my case, the axis labels where shown just partially, and aplying this option was possible to control the complete figure size and pad.
Alexis
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
110 | |
96 | |
76 | |
63 | |
55 |
User | Count |
---|---|
142 | |
107 | |
89 | |
84 | |
65 |