<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#ffffff" text="#000000">
    Hi, Pat.<br>
    <br>
    On further checking, there's still some sort of problem.<br>
    <br>
    When I use your example below, it works in ParaView's Python Shell,
    if the PlotData filter was created via the ParaView gui.&nbsp;&nbsp; However,
    if it was created in the macro (using the text from a python trace
    of how it was created via the gui), then your example produces an
    empty list.&nbsp;&nbsp; The PlotData filter created in the macro does show up
    on the screen and look correct; but the series names aren't
    accessible.<br>
    <br>
    Does this provide any useful clues?<br>
    <br>
    Thanks.<br>
    <br>
    Greg<br>
    <br>
    On 10/06/2011 11:49 AM, pat marion wrote:
    <blockquote
cite="mid:CAMetC=RUYJwVDcYKgzUHQvtGT+zJG2Kj_zRVQDqE_GFOazY24w@mail.gmail.com"
      type="cite">Hi Greg,<br>
      <br>
      I think I found a bug, or else I don't quite understand what is
      happening.&nbsp; It seems that under certain circumstances the python
      layer fails to wrap all the properties of a proxy.&nbsp; I look into
      this, but for now you can work around the issue by accessing the
      c++ api:<br>
      <br>
      <style type="text/css">
p, li { white-space: pre-wrap; }
</style>
      <p style="margin: 0px; text-indent: 0px;"><span
          style="font-family: 'Courier'; font-size: 13pt; color: rgb(0,
          0, 0);">&gt;&gt;&gt; p =
          rep.SMProxy.GetProperty("SeriesNamesInfo")</span></p>
      <p style="margin: 0px; text-indent: 0px;"><span
          style="font-family: 'Courier'; font-size: 13pt; color: rgb(0,
          0, 0);">&gt;&gt;&gt; series_names = [p.GetElement(i) for i in
          xrange(p.GetNumberOfElements())]</span></p>
      <br>
      <br>
      Pat<br>
      <br>
      <div class="gmail_quote">On Thu, Oct 6, 2011 at 2:34 PM, Greg
        Schussman <span dir="ltr">&lt;<a moz-do-not-send="true"
            href="mailto:schussman@slac.stanford.edu">schussman@slac.stanford.edu</a>&gt;</span>
        wrote:<br>
        <blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt
          0.8ex; border-left: 1px solid rgb(204, 204, 204);
          padding-left: 1ex;">
          <div bgcolor="#ffffff" text="#000000"> Hi, Pat.<br>
            <br>
            I tried plotting directly from the CSVReader, and then it
            all works.&nbsp;&nbsp; But when my programmable filter is in between,
            there's a problem.&nbsp; When I apply the plot filter&nbsp; (via
            ParaView's GUI) to my programmable filter, the plot works
            fine in the gui, but the GetProperty("SeriesNameInfo")
            returns None.&nbsp;&nbsp; However, if I skip the programmable filter,
            and plot the CSV reader directly, then
            GetProperty("SeriesNameInfo") does what you say it should.<br>
            <br>
            Anyway, I think I can skip my programmable filter for now,
            and get this working dircetly.<br>
            <br>
            Thanks so much for what you've provided.
            <div class="im"><br>
              <br>
              Greg<br>
              <br>
              <br>
              On 10/06/2011 11:10 AM, pat marion wrote: </div>
            <div>
              <div class="h5">
                <blockquote type="cite">Are you sure that the chart view
                  is the active view when you call
                  GetDisplayProperties(p)?&nbsp;&nbsp; If the render view is
                  active, you'll get the wrong representation.&nbsp; I
                  verified that this works for Wavelet --&gt; Plot Data
                  filter using PV 3.10.1.<br>
                  <br>
                  Pat<br>
                  <br>
                  <div class="gmail_quote">On Thu, Oct 6, 2011 at 2:03
                    PM, Greg Schussman <span dir="ltr">&lt;<a
                        moz-do-not-send="true"
                        href="mailto:schussman@slac.stanford.edu"
                        target="_blank">schussman@slac.stanford.edu</a>&gt;</span>
                    wrote:<br>
                    <blockquote class="gmail_quote" style="margin: 0pt
                      0pt 0pt 0.8ex; border-left: 1px solid rgb(204,
                      204, 204); padding-left: 1ex;">
                      <div bgcolor="#ffffff" text="#000000">
                        <div> On 10/06/2011 07:33 AM, pat marion wrote:
                          <blockquote type="cite">series_names = [name
                            for name in
                            d.GetProperty("SeriesNamesInfo")]</blockquote>
                        </div>
                        <font size="+1"><font face="Droid Serif"><br>
                            Hi, Pat.<br>
                            <br>
                            Thanks for the helpful pointers. <br>
                            <br>
                            After setting everything up in ParaView
                            (3.10.1, 64-bit), I'm not getting results.&nbsp;
                            Here is what I did from the ParaView Python
                            Shell:<br>
                            <br>
                          </font></font>
                        <div>
                          <p style="margin: 0px; text-indent: 0px;"><span
                              style="font-family: 'Courier'; font-size:
                              10pt; color: rgb(0, 0, 0);">&gt;&gt;&gt; p
                              =<br>
                              FindSource("PlotData1")</span></p>
                        </div>
                        <p style="margin: 0px; text-indent: 0px;"><span
                            style="font-family: 'Courier'; font-size:
                            10pt; color: rgb(0, 0, 0);">&gt;&gt;&gt; rep
                            =<br>
                            GetDisplayProperties(p)</span></p>
                        <p style="margin: 0px; text-indent: 0px;"><span
                            style="font-family: 'Courier'; font-size:
                            10pt; color: rgb(0, 0, 0);">&gt;&gt;&gt;<br>
                            rep.GetProperty("SeriesNamesInfo")</span></p>
                        <p style="margin: 0px; text-indent: 0px;"><span
                            style="font-family: 'Courier'; font-size:
                            10pt; color: rgb(0, 150, 0);">None</span></p>
                        <p style="margin: 0px; text-indent: 0px;"><span
                            style="font-family: 'Courier'; font-size:
                            10pt; color: rgb(0, 0, 0);">&gt;&gt;&gt; </span></p>
                        <font size="+1"><font face="Droid Serif"><br>
                            While, at the same time, the Object
                            Inspector shows 27 series, each with the
                            correct name.<br>
                            <br>
                            Does something need to be updated or
                            refreshed first?&nbsp; I notice in the pvblot
                            script, there is a <br>
                            <br>
                            &nbsp; rep.Update()<br>
                            <br>
                            but when I try that in ParaView's python
                            shell (after getting the representation the
                            way I showed above), it tells me:<br>
                            &nbsp; </font></font>
                        <p style="margin: 0px; text-indent: 0px;"><span
                            style="font-family: 'Courier'; font-size:
                            10pt; color: rgb(0, 0, 0);">&gt;&gt;&gt;
                            rep.Update()</span></p>
                        <p style="margin: 0px; text-indent: 0px;"><span
                            style="font-family: 'Courier'; font-size:
                            10pt; color: rgb(255, 0, 0);">Traceback
                            (most recent call last):</span></p>
                        <p style="margin: 0px; text-indent: 0px;"><span
                            style="font-family: 'Courier'; font-size:
                            10pt; color: rgb(255, 0, 0);"> File
                            "&lt;console&gt;", line 1, in<br>
                            &lt;module&gt;</span></p>
                        <p style="margin: 0px; text-indent: 0px;"><span
                            style="font-family: 'Courier'; font-size:
                            10pt; color: rgb(255, 0, 0);"> File<br>
"/usr/lib64/paraview/site-packages/paraview/servermanager.py",<br>
                            line 370, in __getattr__</span></p>
                        <p style="margin: 0px; text-indent: 0px;"><span
                            style="font-family: 'Courier'; font-size:
                            10pt; color: rgb(255, 0, 0);"> return
                            getattr(self.SMProxy, name)</span></p>
                        <p style="margin: 0px; text-indent: 0px;"><span
                            style="font-family: 'Courier'; font-size:
                            10pt; color: rgb(255, 0, 0);">AttributeError:
                            Update</span></p>
                        <p style="margin: 0px; text-indent: 0px;"><span
                            style="font-family: 'Courier'; font-size:
                            10pt; color: rgb(0, 0, 0);">&gt;&gt;&gt; </span></p>
                        <br>
                        <font size="+1"><font face="Droid Serif">Thanks!<br>
                            <font color="#888888"> <br>
                              Greg<br>
                              <br>
                              <br>
                            </font></font></font> </div>
                    </blockquote>
                  </div>
                  <br>
                </blockquote>
                <br>
              </div>
            </div>
          </div>
        </blockquote>
      </div>
      <br>
    </blockquote>
    <br>
  </body>
</html>