R绘制渲染SQL Server 2016使用sp_execute_external_script

问题描述:

有没有人想过如何使用sp_execute_external_script绘制一个绘图,在SQL Management Studio结果窗口或消息窗口或弹出窗口中返回绘图?我能够将文件输出到文件系统,但这并不理想。R绘制渲染SQL Server 2016使用sp_execute_external_script

下面是我如何得到一个图形输出到文件系统。

EXECUTE sp_execute_external_script 
       @language = N'R' 
       , @script = N' trellis.device(device="png", filename="c:/output/HistPlot.png"); 
       myHist=histogram(~col1, data=InputDataSet); 
       print(myHist)' 
       , @input_data_1 = N'SELECT col1, col2 from ds.dbo.[sample]' 
+0

管理Studio是一个数据库客户端,而不是设计或打算运行图形。使用存储过程将数据导入R,然后在最终使用工具R中运行绘图。 – Parfait

+0

此外,SQL是一种用于数据库检索和管理需求的特殊用途语言。运行文件系统和命令行进程不是通用语言。 – Parfait

+1

感谢您的反馈Parfait。我问这个问题是因为MSDN上的所有关于SQL Server R服务的问题,他们都明确提到使用SQL Server来运行R脚本并返回图表嵌入到应用程序中。他们甚至提供了一个只显示SQL Server的流程和一个应用程序,该应用程序显示来自SQL Server的R结果。 [链接](https://msdn.microsoft.com/en-US/library/mt604885.aspx) – ansek

在Microsoft提供可视化功能之前,您可以使用SSMSBoost这是一个可以解决您的问题的免费实用程序。

安装完成后,请突出显示要读取的二进制图片的单元格。右键单击并选择可视化为,然后选择图片

Right click and select Visualize as and then choose picture

的图像将被显示到画图: The image is going to be displayed into Paint

+1

我终于得到了最新版本的安装,这正是我所追求的!谢谢! – ansek

您可能想要使用SSRS在图中显示输出。 SSMS不旨在显示图形。您可以在SSRS中显示存储过程的输出,并且最近在CTP3中添加到SSRS意味着您可以生成一些非常漂亮的图表。

+0

这真的很酷! – ansek

+0

我在R服务中使用SQL Server 2016。我为直方图创建了一个存储过程,但无法查看它。你能帮我理解如何在SSRS中调用/显示存储过程的输出吗?针对任何文档/教程也会有所帮助。 – Minu

我们正在研究在SSMS中为从R脚本返回的图形提供可视化功能。但现在你必须在可以显示图像的应用程序(SSRS,Internet Explorer)等中打开图像。 MSDN有示例显示如何使用SSRS中的图。你可以找到样品here

+0

您的链接将我带到AdventureWorks数据库下载页面。你能否更新它? – Minu