Stata 从Mata内部绘制图形

Stata 从Mata内部绘制图形,stata,Stata,考虑mata中的以下玩具矩阵: mata: A 1 2 +-----------------+ 1 | 6555 140 | 2 | 7205 135 | 3 | 6255 140 | 4 | 7272 138 | 5 | 10283 133 | 6 | 8244 136 | 7 | 6909 144 |

考虑
mata
中的以下玩具矩阵:

mata: A

            1       2
     +-----------------+
   1 |   6555     140  |
   2 |   7205     135  |
   3 |   6255     140  |
   4 |   7272     138  |
   5 |  10283     133  |
   6 |   8244     136  |
   7 |   6909     144  |
   8 |   7645     138  |
   9 |  12828     134  |
  10 |   6538     137  |
     +-----------------+
如果我想用这个矩阵画散点图,我首先需要转移它 使用
svmat
命令将其转换为变量:

mata: st_matrix("A", A)

svmat A
list, separator(0)

     +-------------+
     |    A1    A2 |
     |-------------|
  1. |  6555   140 |
  2. |  7205   135 |
  3. |  6255   140 |
  4. |  7272   138 |
  5. | 10283   133 |
  6. |  8244   136 |
  7. |  6909   144 |
  8. |  7645   138 |
  9. | 12828   134 |
 10. |  6538   137 |
     +-------------+

twoway scatter A1 A2

是否有一种方法可以直接绘制图形而不离开
mata

可以绘制
mata
矩阵,而无需首先将其转换为Stata变量,如下所示:

twoway scatter matamatrix(A)
有关更多详细信息,请参阅《帮助双向》


由@pearlyspence编辑:

这可以使用
stata()
函数直接从
mata
中运行:

mata: stata("twoway scatter matamatrix(A)")

另一种方法是使用社区贡献的
mata
函数
mm\u plot()

这是moremata函数集合的一部分,因此必须首先下载:

ssc install moremata
ssc install moremata