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
(7)
2
(2)
3
4
(1)
5
6
7
(2)
8
(3)
9
10
11
(2)
12
(5)
13
(2)
14
(3)
15
16
17
18
(2)
19
(8)
20
(3)
21
(9)
22
(3)
23
24
(3)
25
(1)
26
(10)
27
(15)
28
(8)


Showing 9 results of 9

From: Pierre H. <pie...@cr...> - 2013年02月21日 17:21:34
Attachments: signature.asc
Le 21/02/2013 17:33, Sudheer Joseph a écrit :
> Thank you Pierre,
> I will test the other options. I did not
> know the number limitation in case of plt.xcorr.
> Thanks a lot
> with best regards,
Just for reference :
http://stackoverflow.com/questions/6991471/computing-cross-correlation-function
You'll see that (cross)correlation in Python a long ongoing topic.
best,
Pierre
From: Sudheer J. <sud...@ya...> - 2013年02月21日 16:33:26
Thank you Pierre,
               I will test the other options. I did not know the number limitation in case of plt.xcorr.
Thanks a lot
with best regards,
Sudheer
***************************************************************
Sudheer Joseph 
Indian National Centre for Ocean Information Services
Ministry of Earth Sciences, Govt. of India
POST BOX NO: 21, IDA Jeedeemetla P.O.
Via Pragathi Nagar,Kukatpally, Hyderabad; Pin:5000 55
Tel:+91-40-23886047(O),Fax:+91-40-23895011(O),
Tel:+91-40-23044600(R),Tel:+91-40-9440832534(Mobile)
E-mail:sjo...@gm...;sud...@ya...
Web- http://oppamthadathil.tripod.com
***************************************************************
________________________________
 From: Pierre Haessig <pie...@cr...>
To: mat...@li... 
Sent: Thursday, 21 February 2013 9:52 PM
Subject: Re: [Matplotlib-users] cross correlation
 
Hi Sudheer,
Le 21/02/2013 02:22, Sudheer Joseph a écrit : 
Thank you very much Smith and Paul,
>                     I was away from office due to a medical situation. So could not respond and thank you regarding the help. I have got the results now and the tips from both of you were extremely useful. I am facing an issue with the code when I call plt.xcorr, in a loop. it builds up usage of memory by python and reaches to the RAM what ever available ( in my 4 GB laptop it reaches almost full and in my 24 GB desktop it reaches the available. I suspected the plot not being closed during each iteration so have given a plt.close('all') in the loop. after which it is taking a good time to run the code which was otherwise faster until ram usage reaches its maximum.
>Is there a way to get out of this situation?. I am attaching the code here and also the link to the data I am using. If possible kindly help.
>
Thanks for sharing the code. By a quick look at gen_xcorr_wnd.py,
 you are generating a quite high number (about len(lons)*len(lats))
 of xcorr series over 365 lags. Here are two thoughts about why I
 would not recommend using xcorr from matplotlib for this job :
1) There is an overhead in creating a plot object which is
 unnecessary since you're only interested in correlation values
2) internally, plt.xcorr uses numpy.correlate
 (https://github.com/matplotlib/matplotlib/blob/master/lib/matplotlib/axes.py#L4319 and https://github.com/numpy/numpy/blob/master/numpy/core/numeric.py#L731) which is quite fast but unfortunately cannot be well tuned in terms of the output length (only three modes : 'valid', 'same' or 'full'. Matplotlib uses 'full' )
All this to say that when you're interested in 365 correlation
 values, the internal computations takes place on (N+M-1) points
 (where N, M are the length of the input vectors, i.e. 2189 if I'm
 right) and so about 90 % of the output is thrown away.
This being said, there is a tiny issue : I don't know a good module
 which has the (x)correlation function. statsmodel has acf (aka
 correlation) but I don't remember if there is crosscorrelation. For
 acf has two computation modes : one based on fft, one based on
 numpy.correlate which suffer from the same problem as matplotlib's
 xcorr ( https://github.com/statsmodels/statsmodels/blob/master/statsmodels/tsa/stattools.py#L347)
best,
Pierre
------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_feb
_______________________________________________
Matplotlib-users mailing list
Mat...@li...
https://lists.sourceforge.net/lists/listinfo/matplotlib-users 
From: Pierre H. <pie...@cr...> - 2013年02月21日 16:22:51
Attachments: signature.asc
Hi Sudheer,
Le 21/02/2013 02:22, Sudheer Joseph a écrit :
> Thank you very much Smith and Paul,
> I was away from office due
> to a medical situation. So could not respond and thank you regarding
> the help. I have got the results now and the tips from both of you
> were extremely useful. I am facing an issue with the code when I call
> plt.xcorr, in a loop. it builds up usage of memory by python and
> reaches to the RAM what ever available ( in my 4 GB laptop it reaches
> almost full and in my 24 GB desktop it reaches the available. I
> suspected the plot not being closed during each iteration so have
> given a plt.close('all') in the loop. after which it is taking a good
> time to run the code which was otherwise faster until ram usage
> reaches its maximum.
> Is there a way to get out of this situation?. I am attaching the code
> here and also the link to the data I am using. If possible kindly help.
>
Thanks for sharing the code. By a quick look at gen_xcorr_wnd.py, you
are generating a quite high number (about len(lons)*len(lats)) of xcorr
series over 365 lags. Here are two thoughts about why I would not
recommend using xcorr from matplotlib for this job :
1) There is an overhead in creating a plot object which is unnecessary
since you're only interested in correlation values
2) internally, plt.xcorr uses numpy.correlate
(https://github.com/matplotlib/matplotlib/blob/master/lib/matplotlib/axes.py#L4319
and
https://github.com/numpy/numpy/blob/master/numpy/core/numeric.py#L731)
which is quite fast but unfortunately cannot be well tuned in terms of
the output length (only three modes : 'valid', 'same' or 'full'.
Matplotlib uses 'full' )
All this to say that when you're interested in 365 correlation values,
the internal computations takes place on (N+M-1) points (where N, M are
the length of the input vectors, i.e. 2189 if I'm right) and so about 90
% of the output is thrown away.
This being said, there is a tiny issue : I don't know a good module
which has the (x)correlation function. statsmodel has acf (aka
correlation) but I don't remember if there is crosscorrelation. For acf
has two computation modes : one based on fft, one based on
numpy.correlate which suffer from the same problem as matplotlib's xcorr
(
https://github.com/statsmodels/statsmodels/blob/master/statsmodels/tsa/stattools.py#L347)
best,
Pierre
From: Neal B. <ndb...@gm...> - 2013年02月21日 15:03:24
Objective:
produce multi-page pdfs using xelatex so I can have advanced latex and stix 
fonts (using xits package)
I've used pdf multipage with the recipe:
import matplotlib as mpl
mpl.use ('pdf')
import matplotlib.pyplot as plt
from matplotlib.backends.backend_pdf import PdfPages
pdf = PdfPages('test_uw3.pdf')
for page in ...
 fig = plt.figure() 
 pdf.savefig (fig)
 plt.close()
pdf.close()
Now I'm interested in using xelatex (to use stix fonts). So I saw the 
I should use pgf
If I add:
from matplotlib.backends.backend_pgf import FigureCanvasPgf
matplotlib.backend_bases.register_backend('pdf', FigureCanvasPgf)
as suggested by
http://matplotlib.org/users/pgf.html
I get an error:
Traceback (most recent call last):
 File "./read_hist3.py", line 121, in <module>
 pdf.savefig (fig)
 File "/usr/lib64/python2.7/site-packages/matplotlib/backends/backend_pdf.py", 
line 2258, in savefig
 figure.savefig(self, format='pdf', **kwargs)
 File "/usr/lib64/python2.7/site-packages/matplotlib/figure.py", line 1363, in 
savefig
 self.canvas.print_figure(*args, **kwargs)
 File "/usr/lib64/python2.7/site-packages/matplotlib/backend_bases.py", line 
2093, in print_figure
 **kwargs)
 File "/usr/lib64/python2.7/site-packages/matplotlib/backend_bases.py", line 
1943, in _print_method
 return print_method(*args, **kwargs)
 File "/usr/lib64/python2.7/site-packages/matplotlib/backends/backend_pgf.py", 
line 830, in print_pdf
 raise ValueError("filename must be a path or a file-like object")
ValueError: filename must be a path or a file-like object
Any ideas?
From: patricia <ptr...@ho...> - 2013年02月21日 09:08:44
Dear Jody,
This is the original code that I am using:
http://old.nabble.com/Taylor-diagram-(2nd-take)-p33364690.html
It is a code that plots Taylor diagrams. 
I would like to get ticks every two points in the standard deviation axis of
the Taylor diagrams to avoid overlapping of labels (as I am making a figure
with several small Taylor Diagrams subplots).
Thanks!
Patricia
--
View this message in context: http://matplotlib.1069221.n5.nabble.com/I-cannot-change-the-axis-tick-separation-or-nbins-in-Axis-artist-tp40446p40454.html
Sent from the matplotlib - users mailing list archive at Nabble.com.
From: ChaoYue <cha...@gm...> - 2013年02月21日 04:35:18
Hi,
could you use a loop to solve it?
arr1list = [np.arange(10) + i for i in range(10)]
arr2list = [np.arange(10) -i for i in range(10)]
for arr1,arr2 in zip(arr1list,arr2list):
 plot(arr1,arr2)
you can use a more object oriented way:
fig = plt.figure()
ax = fig.add_subplot()
for arr1,arr2 in zip(arr1list,arr2list):
 ax.plot(arr1,arr2)
code not tested.
cheers,
Chao
On Thu, Feb 21, 2013 at 4:17 AM, lkz2366 [via matplotlib] <
ml-...@n5...> wrote:
> I am confused on how to plot a variable number of XY plots on a single
> chart. I want to superimpose XY plots on a single chart but the number of
> plots is unknown until runtime.
> For example, if I want to plot 4 plots the code would be:
> figure()
> plot(x1,y1,x2,y2,x3,y3,x4,y4)
> show()
>
> But the number of plots is variable and could be anywhere from 5-30. Any
> ideas on how I can do this?
> I already have the rest of my program working. The program reads all of
> the data from all of the files in a target directory and writes the data to
> X and Y lists.
> Thanks for any help.
>
> ------------------------------
> If you reply to this email, your message will be added to the discussion
> below:
> http://matplotlib.1069221.n5.nabble.com/Multiple-XY-plots-tp40451.html
> To start a new topic under matplotlib - users, email
> ml-...@n5...
> To unsubscribe from matplotlib, click here<http://matplotlib.1069221.n5.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=2&code=Y2hhb3l1ZWpveUBnbWFpbC5jb218MnwxMzg1NzAzMzQx>
> .
> NAML<http://matplotlib.1069221.n5.nabble.com/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml>
>
-- 
***********************************************************************************
Chao YUE
Laboratoire des Sciences du Climat et de l'Environnement (LSCE-IPSL)
UMR 1572 CEA-CNRS-UVSQ
Batiment 712 - Pe 119
91191 GIF Sur YVETTE Cedex
Tel: (33) 01 69 08 29 02; Fax:01.69.08.77.16
************************************************************************************
--
View this message in context: http://matplotlib.1069221.n5.nabble.com/Multiple-XY-plots-tp40451p40453.html
Sent from the matplotlib - users mailing list archive at Nabble.com.
From: Jody K. <jk...@uv...> - 2013年02月21日 04:23:50
Perhaps you could include some code that illustrates what you are trying to do? I'm confused if you are trying to do something simple and are just going about it the wrong way, or if you are doing something hard. 
If I do 
ax=axes()
ax.plot(arange(1.,10.))
xticks(range(0,10,2))
yticks(range(0,10,2))
I get ticks every 2 points.
Thanks, Jody
On Feb 20, 2013, at 11:34 AM, patricia <ptr...@ho...> wrote:
> Dear Jody,
> No, I tried it also...
> ax.axis["left"].xticks() results in error: 'AxisArtist' object has no
> attribute 'xticks'
> ax.xticks() results in error: 'Floating AxesHostAxesSubplot' object has no
> attribute 'xticks'
> plt.xticks() or just xticks() does not produce any change. 
> Any idea?
> 
> http://www.ce.mu.edu.tr/sharedoc/python-matplotlib-doc-.0.1/html/mpl_toolkits/axes_grid/users/axisartist.html#gridhelper 
> gives some explanation with the The GridHelperRectlinear, but I cannot make
> it work
> 
> Thanks,
> Patricia
> 
> 
> 
> --
> View this message in context: http://matplotlib.1069221.n5.nabble.com/I-cannot-change-the-axis-tick-separation-or-nbins-in-Axis-artist-tp40446p40448.html
> Sent from the matplotlib - users mailing list archive at Nabble.com.
> 
> ------------------------------------------------------------------------------
> Everyone hates slow websites. So do we.
> Make your web apps faster with AppDynamics
> Download AppDynamics Lite for free today:
> http://p.sf.net/sfu/appdyn_d2d_feb
> _______________________________________________
> Matplotlib-users mailing list
> Mat...@li...
> https://lists.sourceforge.net/lists/listinfo/matplotlib-users
--
Jody Klymak 
http://web.uvic.ca/~jklymak/
From: Bernard W. <bwi...@gm...> - 2013年02月21日 02:33:34
I'm using the recently added PGF/Tikz support to save figures as .pgf
commands to include in a Latex document (I love this new feature!).
The final rendered figures look great after running through pdflatex, but
occasionally it's impractical to use pure vector drawing instructions.
For example, I'm currently working on a figure with 6 subplots, each
containing a scatter type plot with ~400k markers. The resulting .pgf file
is ~350MB.
Is it possible to rasterize the individual axes plots (to .png say) and
then generate a 'hybrid' .pgf output where things like axes ticks, labels,
etc are still vectorized, but the excessively dense scatter plot are
treated as imshow plots are and imported a raster images?
I've tried setting 'rasterized' = True on both the axes and the plot
command, but no dice.
Sample code:
p = np.random.randn(400000,4) # of course I have actual data, but this
should produce the same problem when saving
count = 0
for i in xrange(4):
 for j in xrange(i+1,4):
 count += 1
 ax = fig.add_subplot(2,3, count, rasterized=True)
 ax.plot(p[:,i], p[:,j], 'k.', markersize=0.25, rasterized=True)
Any advice or insight would be greatly appreciated.
Thanks
From: Sudheer J. <sud...@ya...> - 2013年02月21日 01:22:40
Thank you very much Smith and Paul,
                     I was away from office due to a medical situation. So could not respond and thank you regarding the help. I have got the results now and the tips from both of you were extremely useful. I am facing an issue with the code when I call plt.xcorr, in a loop. it builds up usage of memory by python and reaches to the RAM what ever available ( in my 4 GB laptop it reaches almost full and in my 24 GB desktop it reaches the available. I suspected the plot not being closed during each iteration so have given a plt.close('all') in the loop. after which it is taking a good time to run the code which was otherwise faster until ram usage reaches its maximum.
Is there a way to get out of this situation?. I am attaching the code here and also the link to the data I am using. If possible kindly help.
ftp ftpser.incois.gov.in
user temp
password incoistemp
cd /home0/temp/comp
bin
mget qu_test.nc.gz gunzip qu_test.nc.gz
 
***************************************************************
Sudheer Joseph 
Indian National Centre for Ocean Information Services
Ministry of Earth Sciences, Govt. of India
POST BOX NO: 21, IDA Jeedeemetla P.O.
Via Pragathi Nagar,Kukatpally, Hyderabad; Pin:5000 55
Tel:+91-40-23886047(O),Fax:+91-40-23895011(O),
Tel:+91-40-23044600(R),Tel:+91-40-9440832534(Mobile)
E-mail:sjo...@gm...;sud...@ya...
Web- http://oppamthadathil.tripod.com
***************************************************************
________________________________
 From: Sterling Smith <sm...@fu...>
To: Sudheer Joseph <sud...@ya...> 
Cc: Paul Hobson <pmh...@gm...>; "mat...@li..." <mat...@li...> 
Sent: Friday, 8 February 2013 10:23 PM
Subject: Re: [Matplotlib-users] cross correlation
 
Sudheer,
For the documentation you are looking for
print ax1.xcorr.__doc__
(Paul tried to give you the IPython method of getting that documentation which is by typing a ? (or ??) after the desired object.)
In the documentation (at the link you gave http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.xcorr), it says that there are three objects returned by xcorr:
Return value is a tuple (*lags*, *c*, *line*) where:
 - *lags* are a length ``2*maxlags+1`` lag vector
 - *c* is the ``2*maxlags+1`` auto correlation vector
 - *line* is a :class:`~matplotlib.lines.Line2D` instance
  returned by :func:`~matplotlib.pyplot.plot`.
So the error you were getting is due to the fact that you have only specified two variables to hold the three returned objects.
Try:
lags,c,line = ax1.xcorr .....
(Note that you have xcorr and lags backwards in your attempt.)
-Sterling
On Feb 8, 2013, at 1:56AM, Sudheer Joseph wrote:
> Thank you verymuch Hobson,
>                   However I think I did not understand the suggestion by you fully( pardon my ignorance). I use the below test code from matplotlib site. How does one make a call to get lags and correlation corresponding to the x and y values in the plot. a Print command of 
> In [23]: print ax1.xcorr
> <bound method AxesSubplot.xcorr of <matplotlib.axes.AxesSubplot object at 0x44c1410>>
> results as above. Is it possible to assign the xcorr,lags=ax1.xcorr(x, y, usevlines=True, maxlags=50, normed=True, lw=2) ? with a different syntax? I get below error when I try the above .
> In [27]: xcorr,lags=ax1.xcorr(x, y, usevlines=True, maxlags=50, normed=True, lw=2)
> ---------------------------------------------------------------------------
> ValueError                Traceback (most recent call last)
> /home/sjo/work/PY_WORK/stats/<ipython-input-27-e1e58c045ad4> in <module>()
> ----> 1 xcorr,lags=ax1.xcorr(x, y, usevlines=True, maxlags=50, normed=True, lw=2)
> 
> ValueError: too many values to unpack
> 
> 
> 
> import matplotlib.pyplot as plt
> import numpy as np
> x,y = np.random.randn(2,100)
> fig = plt.figure()
> ax1 = fig.add_subplot(211)
> ax1.xcorr(x, y, usevlines=True, maxlags=50, normed=True, lw=2)
> ax1.grid(True)
> ax1.axhline(0, color='black', lw=2)
> ax2 = fig.add_subplot(212, sharex=ax1)
> ax2.acorr(x, usevlines=True, normed=True, maxlags=50, lw=2)
> ax2.grid(True)
> ax2.axhline(0, color='black', lw=2)
> plt.show()
> 
> 
> From: Paul Hobson <pmh...@gm...>
> To: Sudheer Joseph <sud...@ya...> 
> Cc: "mat...@li..." <mat...@li...> 
> Sent: Thursday, 7 February 2013 10:31 PM
> Subject: Re: [Matplotlib-users] cross correlation
> 
> 
> 
> 
> On Thu, Feb 7, 2013 at 3:24 AM, Sudheer Joseph <sud...@ya...> wrote:
> Dear Users,
>       I am relatively new to Matplotlib. I wanted to find cross correlation between 2 time series for my research and was looking at options available with python and found http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.xcorr . However I wanted to save the results in a netcdf file for further use. ie the correlation, lags and significance if possible. Is there a way to get the corr and lags from the axis.xcorr ?? any help in this matter will be greatly appreciated. 
> Sudheer
> 
> Sudheer,
> 
> A call to axes.xcorr returns the lags, correlation (from np.correlate) and the line artists on the figure.
> 
> In IPython, doing "plt.xcorr??" should provide sufficient information. It's a pretty simple method.
> -paul
> 
> 
> ------------------------------------------------------------------------------
> Free Next-Gen Firewall Hardware Offer
> Buy your Sophos next-gen firewall before the end March 2013 
> and get the hardware for free! Learn more.
> http://p.sf.net/sfu/sophos-d2d-feb_______________________________________________
> Matplotlib-users mailing list
> Mat...@li...
> https://lists.sourceforge.net/lists/listinfo/matplotlib-users 

Showing 9 results of 9

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 によって変換されたページ (->オリジナル) /