<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: plotting multiple graphs from a large data table in Discussions</title>
    <link>https://community.jmp.com/t5/Discussions/plotting-multiple-graphs-from-a-large-data-table/m-p/237328#M46864</link>
    <description>&lt;P&gt;I'm using JMP 12 and summarize function sorts column values alphabetically.&lt;/P&gt;&lt;P&gt;Is there a clean way to get column values w/o aplhabetizing?I checked other posts but could not find a good way to do this.&amp;nbsp;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Wed, 04 Dec 2019 19:01:49 GMT</pubDate>
    <dc:creator>ENTHU</dc:creator>
    <dc:date>2019-12-04T19:01:49Z</dc:date>
    <item>
      <title>plotting multiple graphs from a large data table</title>
      <link>https://community.jmp.com/t5/Discussions/plotting-multiple-graphs-from-a-large-data-table/m-p/236780#M46733</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have a data table in which I track rise in measurement for different devices in different weeks and every day in current week.This table is dynamic and can have 30-40 products in some weeks.I need to plot rise trend and no of measurements in a graph.If I plot all devices the graph becomes clumsy.So I create a column device_number and would like to plot 5 devices in one graph.At the end I want to combine all grpahs into one page.I manually selected 4 devices and generated the following script to plot the graph.But how do I extend this as per my requirement.&lt;/P&gt;&lt;P&gt;Looking for ideas to make this work on tables that change dynamically.&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Device&lt;/TD&gt;&lt;TD&gt;Date&lt;/TD&gt;&lt;TD&gt;Meas_Rise&lt;/TD&gt;&lt;TD&gt;No_of_Measurements&lt;/TD&gt;&lt;TD&gt;Device_Number&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;MOSFET&lt;/TD&gt;&lt;TD&gt;Week1&lt;/TD&gt;&lt;TD&gt;100.00%&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;MOSFET&lt;/TD&gt;&lt;TD&gt;Week2&lt;/TD&gt;&lt;TD&gt;98.53%&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;MOSFET&lt;/TD&gt;&lt;TD&gt;Week3&lt;/TD&gt;&lt;TD&gt;99.78%&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;MOSFET&lt;/TD&gt;&lt;TD&gt;Week4.0&lt;/TD&gt;&lt;TD&gt;100.00%&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;MOSFET&lt;/TD&gt;&lt;TD&gt;Week4.1&lt;/TD&gt;&lt;TD&gt;100.00%&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;MOSFET&lt;/TD&gt;&lt;TD&gt;Week4.2&lt;/TD&gt;&lt;TD&gt;100.00%&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Diode&lt;/TD&gt;&lt;TD&gt;Week1&lt;/TD&gt;&lt;TD&gt;92.96%&lt;/TD&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Diode&lt;/TD&gt;&lt;TD&gt;Week2&lt;/TD&gt;&lt;TD&gt;41.01%&lt;/TD&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Diode&lt;/TD&gt;&lt;TD&gt;Week3&lt;/TD&gt;&lt;TD&gt;77.07%&lt;/TD&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Diode&lt;/TD&gt;&lt;TD&gt;Week4.0&lt;/TD&gt;&lt;TD&gt;0.00%&lt;/TD&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Diode&lt;/TD&gt;&lt;TD&gt;Week4.1&lt;/TD&gt;&lt;TD&gt;0.00%&lt;/TD&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Diode&lt;/TD&gt;&lt;TD&gt;Week4.2&lt;/TD&gt;&lt;TD&gt;0.00%&lt;/TD&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;BJT&lt;/TD&gt;&lt;TD&gt;Week1&lt;/TD&gt;&lt;TD&gt;37.63%&lt;/TD&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;BJT&lt;/TD&gt;&lt;TD&gt;Week2&lt;/TD&gt;&lt;TD&gt;55.81%&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;BJT&lt;/TD&gt;&lt;TD&gt;Week3&lt;/TD&gt;&lt;TD&gt;73.78%&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;BJT&lt;/TD&gt;&lt;TD&gt;Week4.0&lt;/TD&gt;&lt;TD&gt;40.95%&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;BJT&lt;/TD&gt;&lt;TD&gt;Week4.1&lt;/TD&gt;&lt;TD&gt;21.96%&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;BJT&lt;/TD&gt;&lt;TD&gt;Week4.2&lt;/TD&gt;&lt;TD&gt;74.91%&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Opamp&lt;/TD&gt;&lt;TD&gt;Week1&lt;/TD&gt;&lt;TD&gt;100.00%&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Opamp&lt;/TD&gt;&lt;TD&gt;Week2&lt;/TD&gt;&lt;TD&gt;100.00%&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Opamp&lt;/TD&gt;&lt;TD&gt;Week3&lt;/TD&gt;&lt;TD&gt;100.00%&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Opamp&lt;/TD&gt;&lt;TD&gt;Week4.0&lt;/TD&gt;&lt;TD&gt;100.00%&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Opamp&lt;/TD&gt;&lt;TD&gt;Week4.1&lt;/TD&gt;&lt;TD&gt;100.00%&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Opamp&lt;/TD&gt;&lt;TD&gt;Week4.2&lt;/TD&gt;&lt;TD&gt;100.00%&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;4&lt;PRE&gt;&lt;CODE class=" language-jsl"&gt;Add Properties to Table(
	{New Script(
		"Option C",
		Graph Builder(
			Size( 534, 448 ),
			Show Control Panel( 0 ),
			Variables(
				X( :Date ),
				Y( :Meas_Rise ),
				Y( :No_0f_Measurements ),
				Overlay( :Device )
			),
			Elements(
				Position( 1, 1 ),
				Points( X, Y, Legend( 6 ) ),
				Line( X, Y, Legend( 10 ) )
			),
			Elements(
				Position( 1, 2 ),
				Bar(
					X,
					Y,
					Legend( 20 ),
					Bar Style( "Stacked" ),
					Label( "Label by Value" )
				)
			),
			SendToReport(
				Dispatch(
					{},
					"400",
					ScaleBox,
					{Legend Model(
						6,
						Base( 0, 0, 0, Item ID( "MOSFET", 1 ) ),
						Base( 1, 0, 0, Item ID( "Diode", 1 ) ),
						Base( 2, 0, 0, Item ID( "BJT", 1 ) ),
						Base( 3, 0, 0, Item ID( "Opamp", 1 ) )
					)}
				)
			)
		)
	)}
)&lt;/CODE&gt;&lt;/PRE&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;</description>
      <pubDate>Wed, 27 Nov 2019 23:53:52 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/plotting-multiple-graphs-from-a-large-data-table/m-p/236780#M46733</guid>
      <dc:creator>ENTHU</dc:creator>
      <dc:date>2019-11-27T23:53:52Z</dc:date>
    </item>
    <item>
      <title>Re: plotting multiple graphs from a large data table</title>
      <link>https://community.jmp.com/t5/Discussions/plotting-multiple-graphs-from-a-large-data-table/m-p/236791#M46734</link>
      <description>&lt;P&gt;Here is one approach to solve your problem.&amp;nbsp; It loops through your data, 4 devices at a time, generating a chart and then moving the graph to a JMP Journal window, and then moving on to the next 4 devices.&amp;nbsp; I have attached a sample data table that I used for the development.&amp;nbsp; Please note, that the first 4 devices and the second 4 devices generate the same look of the graph, since all of the data are the same, except for the device names.&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="multiple.PNG" style="width: 671px;"&gt;&lt;img src="https://community.jmp.com/t5/image/serverpage/image-id/20482i99E075DDC925D406/image-size/large?v=v2&amp;amp;px=999" role="button" title="multiple.PNG" alt="multiple.PNG" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;The script is not real robust.&amp;nbsp; It assumes that there are multiples of 4 devices, all graphs are to be output in a single column down the output page, etc.&amp;nbsp; I am providing the JSL as a starting place for a possible solution, not the final, robust piece of code it probably should be&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-jsl"&gt;Add Properties to Table(
	{New Script(
		"Option C",
		dt = Current Data Table();
		
		// JMP changed the way Row Order Levels works in JMP 15, so 2 different
		// methods to set the option has to be handled
		If( Num( Word( 1, JMP Version(), "." ) ) &amp;gt;= 15,
			dt:Device &amp;lt;&amp;lt; set Property( "Value Order", {Row Order Levels( 1 )} );
			dt:Device &amp;lt;&amp;lt; set Property( "Row Order Levels", 1 );
		);
		
		// Get a list of the DeviceNames found in the order they exist in the
		// data table
		Summarize( dt, DeviceNames = By( dt:Device ) );
		
		// Create a window to save all of the graphs to
		nw = New Window( "Output", &amp;lt;&amp;lt;journal );
		
		// Loop across all of the Devices, 4 at a time to build the graph
		For( i = 1, i &amp;lt;= N Items( DeviceNames ), i = i + 4,
			
			// Get a list of the current 4 devices
			DeviceList = {};
			For( k = i, k &amp;lt;= i + 3, k++,
				Insert Into( DeviceList, DeviceNames[k] )
			);
			
			// Select the rows where the current 4 devices are found
			dt &amp;lt;&amp;lt; select where( Contains( DeviceList, :Device ) );
		
			// Create a subset of the data with only the 4 current devices in it
			dtSub = dt &amp;lt;&amp;lt; Subset( invisible, Selected Rows( 1 ), Selected columns only( 0 ) );
			
			// Wait for the new data table to be completed before processing
			wait(0);
			
			// Run the Graph Code, substituting in the new device's names where required
			Eval(
				Substitute(
						Expr(
							gb = dtSub &amp;lt;&amp;lt; Graph Builder(invisible,
								Size( 534, 448 ),
								Show Control Panel( 0 ),
								Variables(
									X( :Date ),
									Y( :Meas_Rise ),
									Y( :Name( "No_of_Measurements" ) ),
									Overlay( :Device )
								),
								Elements(
									Position( 1, 1 ),
									Points( X, Y, Legend( 6 ) ),
									Line( X, Y, Legend( 10 ) )
								),
								Elements(
									Position( 1, 2 ),
									Bar(
										X,
										Y,
										Legend( 20 ),
										Bar Style( "Stacked" ),
										Label( "Label by Value" )
									)
								),
								SendToReport(
									Dispatch(
										{},
										"400",
										ScaleBox,
										{Legend Model(
											6,
											Base( 0, 0, 0, Item ID( __dev1__, 1 ) ),
											Base( 1, 0, 0, Item ID( __dev2__, 1 ) ),
											Base( 2, 0, 0, Item ID( __dev3__, 1 ) ),
											Base( 3, 0, 0, Item ID( __dev4__, 1 ) )
										)}
									)
								)
							)
						),
					Expr( __dev1__ ), DeviceList[1],
					Expr( __dev2__ ), DeviceList[2],
					Expr( __dev3__ ), DeviceList[3],
					Expr( __dev4__ ), DeviceList[4]
				)
			);
			
			// Add the output from the graph to the output window
			nw &amp;lt;&amp;lt; append( Report( gb ) );
			
			// Cleanup the current working items to get ready for the next 4 devices
			report(gb) &amp;lt;&amp;lt; delete;
			Close( dtSub, nosave );
		);
	)}
)


&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Thu, 28 Nov 2019 02:26:56 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/plotting-multiple-graphs-from-a-large-data-table/m-p/236791#M46734</guid>
      <dc:creator>txnelson</dc:creator>
      <dc:date>2019-11-28T02:26:56Z</dc:date>
    </item>
    <item>
      <title>Re: plotting multiple graphs from a large data table</title>
      <link>https://community.jmp.com/t5/Discussions/plotting-multiple-graphs-from-a-large-data-table/m-p/237328#M46864</link>
      <description>&lt;P&gt;I'm using JMP 12 and summarize function sorts column values alphabetically.&lt;/P&gt;&lt;P&gt;Is there a clean way to get column values w/o aplhabetizing?I checked other posts but could not find a good way to do this.&amp;nbsp;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 04 Dec 2019 19:01:49 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/plotting-multiple-graphs-from-a-large-data-table/m-p/237328#M46864</guid>
      <dc:creator>ENTHU</dc:creator>
      <dc:date>2019-12-04T19:01:49Z</dc:date>
    </item>
  </channel>
</rss>

