SourceForge logo
SourceForge logo
Menu

matplotlib-users — Discussion related to using matplotlib

You can subscribe to this list here.

2003 Jan
Feb
Mar
Apr
May
(3)
Jun
Jul
Aug
(12)
Sep
(12)
Oct
(56)
Nov
(65)
Dec
(37)
2004 Jan
(59)
Feb
(78)
Mar
(153)
Apr
(205)
May
(184)
Jun
(123)
Jul
(171)
Aug
(156)
Sep
(190)
Oct
(120)
Nov
(154)
Dec
(223)
2005 Jan
(184)
Feb
(267)
Mar
(214)
Apr
(286)
May
(320)
Jun
(299)
Jul
(348)
Aug
(283)
Sep
(355)
Oct
(293)
Nov
(232)
Dec
(203)
2006 Jan
(352)
Feb
(358)
Mar
(403)
Apr
(313)
May
(165)
Jun
(281)
Jul
(316)
Aug
(228)
Sep
(279)
Oct
(243)
Nov
(315)
Dec
(345)
2007 Jan
(260)
Feb
(323)
Mar
(340)
Apr
(319)
May
(290)
Jun
(296)
Jul
(221)
Aug
(292)
Sep
(242)
Oct
(248)
Nov
(242)
Dec
(332)
2008 Jan
(312)
Feb
(359)
Mar
(454)
Apr
(287)
May
(340)
Jun
(450)
Jul
(403)
Aug
(324)
Sep
(349)
Oct
(385)
Nov
(363)
Dec
(437)
2009 Jan
(500)
Feb
(301)
Mar
(409)
Apr
(486)
May
(545)
Jun
(391)
Jul
(518)
Aug
(497)
Sep
(492)
Oct
(429)
Nov
(357)
Dec
(310)
2010 Jan
(371)
Feb
(657)
Mar
(519)
Apr
(432)
May
(312)
Jun
(416)
Jul
(477)
Aug
(386)
Sep
(419)
Oct
(435)
Nov
(320)
Dec
(202)
2011 Jan
(321)
Feb
(413)
Mar
(299)
Apr
(215)
May
(284)
Jun
(203)
Jul
(207)
Aug
(314)
Sep
(321)
Oct
(259)
Nov
(347)
Dec
(209)
2012 Jan
(322)
Feb
(414)
Mar
(377)
Apr
(179)
May
(173)
Jun
(234)
Jul
(295)
Aug
(239)
Sep
(276)
Oct
(355)
Nov
(144)
Dec
(108)
2013 Jan
(170)
Feb
(89)
Mar
(204)
Apr
(133)
May
(142)
Jun
(89)
Jul
(160)
Aug
(180)
Sep
(69)
Oct
(136)
Nov
(83)
Dec
(32)
2014 Jan
(71)
Feb
(90)
Mar
(161)
Apr
(117)
May
(78)
Jun
(94)
Jul
(60)
Aug
(83)
Sep
(102)
Oct
(132)
Nov
(154)
Dec
(96)
2015 Jan
(45)
Feb
(138)
Mar
(176)
Apr
(132)
May
(119)
Jun
(124)
Jul
(77)
Aug
(31)
Sep
(34)
Oct
(22)
Nov
(23)
Dec
(9)
2016 Jan
(26)
Feb
(17)
Mar
(10)
Apr
(8)
May
(4)
Jun
(8)
Jul
(6)
Aug
(5)
Sep
(9)
Oct
(4)
Nov
Dec
2017 Jan
(5)
Feb
(7)
Mar
(1)
Apr
(5)
May
Jun
(3)
Jul
(6)
Aug
(1)
Sep
Oct
(2)
Nov
(1)
Dec
2018 Jan
Feb
Mar
Apr
(1)
May
Jun
Jul
Aug
Sep
Oct
Nov
Dec
2020 Jan
Feb
Mar
Apr
May
(1)
Jun
Jul
Aug
Sep
Oct
Nov
Dec
2025 Jan
(1)
Feb
Mar
Apr
May
Jun
Jul
Aug
Sep
Oct
Nov
Dec
S M T W T F S






1
(1)
2
3
(10)
4
(17)
5
(7)
6
(21)
7
(15)
8
(6)
9
(7)
10
(8)
11
(6)
12
(11)
13
(11)
14
(13)
15
(4)
16
(5)
17
(8)
18
(8)
19
(15)
20
(3)
21
(10)
22
(5)
23
(7)
24
(8)
25
(29)
26
(26)
27
(7)
28
(2)
29
(3)
30
(3)






Showing 8 results of 8

From: Martin M. <mmo...@fo...> - 2012年09月24日 23:37:27
Hi,
 I have pie charts with relatively long texts assigned to each slice of the pie.
The text is drawn horizontally. Instead, I would like to have it rotated at the
same angle as the slice itself (i.e. centered at the "axis" of the slice). In this
way the text would not overlap other text of adjacent slices (or at least if the
text starts far enough from the pie).
The example below is a bit over-twisted but I really want to be able to read at
least a portion of those ['my text4', 'my text5', 'my text6', 'my text7'] legends.
import pylab
F = pylab.gcf()
F.set_size_inches(17, 17)
ax_pie = pylab.axes([0.30, 0.30, 0.4, 0.4])
_data = [0.17, 0.23, 0.599, 0.001, 0.003, 0.003, 0.003]
_colors=['red', 'green', 'blue', 'black', 'white', 'yellow', 'violet']
_labels=['my text1', 'my text2', 'my text3', 'my text4', 'my text5', 'my text6', 'my text7']
ax_pie.pie(_data, colors=_colors, labels=_labels, labeldistance=1.5, autopct='%1.1f%%')
pylab.axis('equal')
pylab.title("blah")
pylab.show()
 I tried to search for some example of this or documentation of the pie function
but it seems it is either not possible or not documented. ;-)
Some relatively close matches I found:
http://matplotlib.sourceforge.net/examples/pylab_examples/text_rotation.html (this
could maybe help but I do not know at what angle is each slice rendered by pylab.pie())
http://matplotlib.sourceforge.net/examples/pylab_examples/text_rotation_relative_to_line.html
(maybe this would work if all text should be drawn at a SAME angle but that is not what I want)
Some other shots:
http://stackoverflow.com/questions/9220933/plotting-a-pie-chart-in-matplotlib-at-a-specific-angle-with-the-fracs-on-the-wed
http://guutaranoheya.web.fc2.com/math/matplotlib_ex.html (search for "rotation")
Thank you for your help,
Martin
From: David H. <Ho...@ge...> - 2012年09月24日 22:32:56
I've run into a large memory leak using Matplotlib with PySide and the
Qt4 back end. I'm using :
 
Python 3.2
Numpy 1.6.2
Pyside 1.1.1 (qt474)
Matplotlib 1.2 (first the Capetown Group port to Python 3, then 1.2 RC2)
 
on Windows XP 32 bit
 
 
I've tried using the Python 2.7 branch of all of the above and don't see
the problem. I don't see the problem with the Tk back end. I don't see
the problem with the Qt4 back end and PyQt4. Only with the above
mentioned versions and using the Qt4 back end with PySide.
 
The following script will reproduce the problem :
 
--------------------
import matplotlib
 
matplotlib.use('Qt4Agg')
matplotlib.rcParams['backend.qt4']='PySide'
import pylab
 
arrayX = []
arrayY = []
for nIndex in range(0, 100):
 arrayX.append(nIndex)
 arrayY.append(nIndex)
 
Figure = matplotlib.pyplot.figure(1)
Axes = Figure.add_axes([ 0.05, 0.05, 0.95, 0.95])
 
Axes.plot(arrayX,
 arrayY,
 color = "blue",
 marker = "o",
 markersize = 5.0)
 
Axes.set_xlim(arrayX[0], arrayX[len(arrayX) - 1])
Axes.set_ylim(arrayY[0], arrayY[len(arrayY) - 1])
 
matplotlib.pyplot.show()
--------------------
 
I run the above, grab the lower right sizing handle on the plot window
and start resizing the window. Watching the python process in task
manager, each resize leaks a noticeable amount of memory. A few minutes
of this will get process memory up to ~2.5 GB. At that point it
crashes.
 
I'm new here, am I in the right place?
From: Benjamin R. <ben...@ou...> - 2012年09月24日 20:41:20
On Mon, Sep 24, 2012 at 12:21 AM, Paul Tremblay <pau...@gm...>wrote:
> Here is my example of a Pareto chart.
>
> For an explanation of a Pareto chart:
>
> http://en.wikipedia.org/wiki/Pareto_chart
>
> Could I get this chart added to the matplolib gallery?
>
>
> Thanks
>
> Paul
>
>
Your code looks overly complicated. You shouldn't have to be doing the
connection to the ylim_changed event, I don't think. I think your main
problem is that you are calling ax1.plot instead of ax2.plot.
I am not against adding more examples to the gallery, but this would have
to be cleaned up before it gets included.
Ben Root
From: Scott H. <st...@co...> - 2012年09月24日 19:24:08
I'd like to use the same patch to clip two images that share the same 
axes, and extract values from the un-clipped region of both arrays. 
Unfortunately this seems harder than expected. Code & questions below, 
Thanks!
from matplotlib.patches import Polygon
import matplotlib.pyplot as plt
from numpy import random
poly = patches.Circle((5,5), radius=3, fill=False, ec='none')
fig = plt.figure()
ax = fig.add_subplot(121)
ax.autoscale_view(0,0,0)
test = random.rand(10,10)
im = ax.imshow(test)
test1 = random.rand(10,10)
# How to prevent automatic axis scaling?
ax1 = fig.add_subplot(122, sharex=ax, sharey=ax)
im1 = ax1.imshow(test1)
ax.add_patch(poly)
im.set_clip_path(poly)
# Doesn't work b/c poly vertices auto-transformed to display coords by 
add_patch?
ax1.add_patch(poly)
im1.set_clip_path(poly)
# How to extract non-clipped values instead of full array?
clipped_data = im.get_array()
plt.show()
From: Michael D. <md...@st...> - 2012年09月24日 17:31:57
matplotlib 1.2.0rc2 is available!
This is the culmination of many months of hard work. 1.2.0 is the first 
release to support Python 3.x, and drops support for Python 2.5 and 
earlier. A more detailed list of changes is available here:
http://matplotlib.org/1.2.0/users/whats_new.html
For the first time, downloads are being made available through github, 
and not through sourceforge, so the release and binaries can be 
downloaded here:
https://github.com/matplotlib/matplotlib/downloads 
<https://github.com/matplotlib/matplotlib/downloads>
(Due to a compiler difference, we do not have binaries for 32-bit OS-X, 
but we hope to have them available soon.)
Documentation for the new release is available here:
http://matplotlib.org/1.2.0/ 
<http://matplotlib.org/1.2.0/users/whats_new.html>
(The main matplotlib.org site will continue to host the documentation 
for 1.1.1 until the final 1.2.0 release).
Go forth, download, kick the tires, and let us know what breaks! (Either 
here or on the github issue tracker).
Cheers,
Mike
From: Andrea G. <and...@gm...> - 2012年09月24日 15:08:02
On 22 September 2012 16:57, Jae-Joon Lee wrote:
> I recommend you to use OffsetImage. Here is an example of how one can
> use OffsetImage.
>
> http://matplotlib.org/examples/pylab_examples/demo_annotation_box.html
>
> And attached is the modified version of the original script.
Thank you JJ, I wasn't aware of OffsetImage. It works perfectly now,
thanks again.
Andrea.
"Imagination Is The Only Weapon In The War Against Reality."
http://xoomer.alice.it/infinity77/
From: Paul T. <pau...@gm...> - 2012年09月24日 04:21:21
Here is my example of a Pareto chart.
For an explanation of a Pareto chart:
http://en.wikipedia.org/wiki/Pareto_chart
Could I get this chart added to the matplolib gallery?
Thanks
Paul
import matplotlib.pyplot as plt
import numpy as np
def update_ax2(axx):
 ax2.set_ylim(0, 100)
 ax2.figure.canvas.draw()
# the data to plot
defects = [32, 22, 15, 5, 2]
labels = ['vertical', 'horizontal', 'behind', 'left area', 'other']
the_sum = sum(defects) # ie, 32 + 22 + 15 + 5 + 2
the_cumsum = np.cumsum(defects) # 32, 32 + 22, 32 + 22 + 15, 32 + 22 + 15
+ 5, 32 + 22, + 15 + 5 + 2
ind = np.arange(len(defects)) # the x locations for the groups
width = .98 # with do of the bars, where a width of 1 indidcates no space
between bars
x = ind + .5 * width # find the middle of the bar
fig = plt.figure() # create a figure
ax1 = fig.add_subplot(111) # and a subplot
ax2 = ax1.twinx() # create a duplicate y axis
# create the callback to automatically update the y axis
ax1.callbacks.connect("ylim_changed", update_ax2)
# create an upper limit for the y axis.
# The upper limit is the sum of all the numbers
ax1.set_ylim(ymax=the_sum)
rects1 = ax1.bar(ind, defects, width=width) # draw the chart
line, = ax1.plot(x, the_cumsum) # draw the line
ax1.set_xticks(ind+ .5 * width) # set ticks for middle of bars
ax1.set_xticklabels(labels) # create the labels for the bars
ax1.set_ylabel('Defects') # create the left y axis label
ax2.set_ylabel('Percentage') # create the right y axis label
plt.show()
From: Ryan M. <rm...@gm...> - 2012年09月24日 02:16:20
On Sat, Sep 22, 2012 at 12:40 PM, Eric Firing <ef...@ha...> wrote:
> On 2012年09月22日 3:03 AM, reckoner wrote:
>> Hi,
>>
>> I have a plot that includes arrows drawn by the quiver command. I would
>> like to create animation using Func Animation, but I don't know how to
>> update the quiver arrows. I can update everything else on the plot and
>> animates fine.
>>
>> Does anybody know how to update the quiver arrows in an animation? I
>> know the quiver arrows have a XY property, but changing that doesn't
>> update the plot.
>
> You cannot update the arrow positions without making a new Quiver
> instance, so to animate with varying positions, you will need to delete
> the previous Quiver instance and make a new one for each frame.
Given this, it might be best to use ArtistAnimation then, which should
handle turning on and off artists that you provide as a list of list
of artists.
Ryan
-- 
Ryan May
Graduate Research Assistant
School of Meteorology
University of Oklahoma

Showing 8 results of 8

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.
Thanks for helping keep SourceForge clean.
X





Briefly describe the problem (required):
Upload screenshot of ad (required):
Select a file, or drag & drop file here.
Screenshot instructions:

Click URL instructions:
Right-click on the ad, choose "Copy Link", then paste here →
(This may not be possible with some types of ads)

More information about our ad policies

Ad destination/click URL:

AltStyle によって変換されたページ (->オリジナル) /